LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1453|回复: 4

装了intel的C++编译器,如何编译openmp程序?

[复制链接]
发表于 2008-9-28 19:02:55 | 显示全部楼层 |阅读模式
链接不上,如下
  1. **** Build of configuration Release for project omp_PI ****
  2. make -k all
  3. Building file: ../src/omp_PI.cpp
  4. Invoking: Intel(R) IA-32 C++ Compiler
  5. icpc -openmp -MMD -MP -MF"src/omp_PI.d" -MT"src/omp_PI.d" -c -o "src/omp_PI.o" "../src/omp_PI.cpp"
  6. ../src/omp_PI.cpp(9): (col. 1) remark: OpenMP DEFINED REGION WAS PARALLELIZED.
  7. Finished building: ../src/omp_PI.cpp
  8. Building target: omp_PI
  9. Invoking: Intel(R) IA-32 C++ Linker
  10. icpc  -o"omp_PI"  ./src/omp_PI.o   
  11. ./src/omp_PI.o: In function `main':
  12. ../src/omp_PI.cpp:(.text+0x24): undefined reference to `__kmpc_begin'
  13. ../src/omp_PI.cpp:(.text+0x2e): undefined reference to `__kmpc_global_thread_num'
  14. ../src/omp_PI.cpp:(.text+0x45): undefined reference to `ompc_set_num_threads'
  15. ../src/omp_PI.cpp:(.text+0x4f): undefined reference to `__kmpc_ok_to_fork'
  16. ../src/omp_PI.cpp:(.text+0x70): undefined reference to `__kmpc_fork_call'
  17. ../src/omp_PI.cpp:(.text+0x83): undefined reference to `__kmpc_serialized_parallel'
  18. ../src/omp_PI.cpp:(.text+0xaa): undefined reference to `__kmpc_end_serialized_parallel'
  19. ../src/omp_PI.cpp:(.text+0xbf): undefined reference to `__kmpc_end'
  20. ./src/omp_PI.o: In function `L_main_9__par_region0_2.0':
  21. ../src/omp_PI.cpp:(.text+0xec): undefined reference to `omp_get_thread_num'
  22. make: *** [omp_PI] 错误 1
  23. make: 由于错误目标“all”并未重新创建。
复制代码
是不是还需要装openmp的包?具体是哪些包?知道的说下,谢谢!

系统是fedora9
发表于 2008-9-28 19:38:41 | 显示全部楼层
fedora 中的 gnu 编译器 gcc 是带着 openmp 支持的。如果可以的话,建议还是用 gcc 算了。就是因为 fedora 在这些方面很方便才用它的。
回复 支持 反对

使用道具 举报

发表于 2008-9-28 20:32:50 | 显示全部楼层
只用过 mpi,你看看 icc 的文档呗,看看链接 openmp 要加什么,

我估计是加个 -lopenmp 之类的,openmp 库的名字。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-9-29 02:25:09 | 显示全部楼层
Post by Quanm;1888272
只用过 mpi,你看看 icc 的文档呗,看看链接 openmp 要加什么,

我估计是加个 -lopenmp 之类的,openmp 库的名字。


加了-openmp 选项了,否则编译通不过,现在是链接不上,我想问问openmp是intel编译器有相关工具,还是fedora软件仓库里有,还是得另外找来装。如果是fedora源里的软件包叫什么名字。等过两天换个网装下软件。
回复 支持 反对

使用道具 举报

发表于 2008-9-29 16:50:57 | 显示全部楼层
libgomp 这个包,你试试。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表