3

我目前正在开发一个在 Linux (openSUSE 12.2) 和 OS X (10.8.1) 上运行的 OpenMP 程序,两者都是 x86_64。在 Linux 上链接没问题,在 OS X 上但是我收到以下错误:

Undefined symbols for architecture x86_64:
  "_gomp_tls_key", referenced from:
      _GOMP_barrier in libgomp.a(barrier.o)
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make[2]: *** [src/resolma_t] Error 1
make[1]: *** [src/CMakeFiles/resolma_t.dir/all] Error 2
make: *** [all] Error 2

我该如何解决?g++ 是用 -fopenmp 调用的,所以这显然不是原因。我的 gcc 版本是i686-apple-darwin11-llvm-gcc-4.2,其他 OpenMP 程序链接并在同一台机器上完美运行。

4

0 回答 0