2014-01-25 146 views
0
#include <omp.h> 
#include <iostream> 

int main() 
{ 
    #pragma omp parallel 
    std::cout << "Hello from thread " 
      << omp_get_thread_num() << ", " 
      << "nthreads " 
      << omp_get_num_threads() 
      << std::endl; 

    return 0; 
} 

我包括omp.h,但仍表示:C++錯誤未定義的引用

  • 未定義參考`omp_get_num_threads'
  • 未定義參考`omp_get_thread_num」

我用克++ 4.71,爲什麼仍然無法鏈接它?

+0

我應該更具體而言,我使用的代碼塊作爲IDE – user3235530

+0

可能重複的[這是一個未定義的參考/解析的外部符號錯誤和我如何解決它?](http://stackoverflow.com/questions/12573816/what-is-an-undefined-reference-unresolved-external-symbol-error-and-how-doi-i-fix) – PlasmaHH

+0

這是關於並行執行,有點不同,我不認爲這是重複的 – user3235530

回答

2

添加-fopenmp編譯器參數,這裏是如何使用它對於g ++:

g++-4.8 -std=c++11 -O2 -Wall -pedantic -fopenmp -pthread main.cpp && ./a.out 
+0

我該怎麼做代碼塊? – user3235530

+0

抱歉,我不知道,從來沒有使用過代碼塊 – marcinj

+0

@ user3235530如果我沒有記錯的話,那麼你需要右鍵單擊'項目管理器'中的'項目圖標',然後在彈出的窗口中,在'其他在編譯器設置選項選項卡中,你可以輸入你需要的附加命令行選項 – jcxz