我试图自学使用Windows7的OpenMP,但我很难获得代码::块来编译一个基本的hello world程序:
#include <omp.h>
#include <stdio.h>
int main()
{
#pragma omp parallel
printf("Hello from thread %d, nthreads %d\n", omp_get_thread_num(), omp_get_num_threads());
}我已经取得了一些进展,但仍然有一个我无法摆脱的持久性错误。
我的编译器中有-fopenmp“编译器->编译器设置->其他选项”
我在“编译器->链接器设置->其他链接器选项”中有-gomp和-pthreads
我在“编译器->工具链可执行文件->附加路径”中有C:\Program File (X86)\Codeblock\MinGW\gcc\mingw32\bin。
当我编译时,我得到一个错误:"ld.exe: cannot find -lpthread“
有人能建议我可能设置错误的地方吗?
谢谢!
发布于 2013-11-28 07:10:15
链接器抱怨缺少一个库。PThreads库实现了OpenMP实现用来完成所有线程工作的线程接口。
这个库在磁盘上被称为"libpthread.a“(静态版本)和"libpthread.so”(动态版本)。尝试在MinGW目录下的文件系统中找到这两个文件。它们可能驻留在名为"lib“或"lib64”的目录中。如果缺少其中任何一个,那么您可能需要安装一个额外的包。
干杯,-michael
https://stackoverflow.com/questions/20251497
复制相似问题