【发布时间】:2017-04-24 18:09:00
【问题描述】:
一直在尝试在 OSX 10.12 上编译和运行一个简单的 OpenMP 程序(Hello World)。我使用 brew 安装了 gcc 6。 我一直在使用“-fopenmp”标志进行构建。 该程序编译正常,但是当我尝试执行该程序时,我得到以下信息:
dyld: lazy symbol binding failed: Symbol not found: ___emutls_get_address
Referenced from: /usr/local/opt/gcc/lib/gcc/6/libgomp.1.dylib (which was built for Mac OS X 10.12)
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: ___emutls_get_address
Referenced from: /usr/local/opt/gcc/lib/gcc/6/libgomp.1.dylib (which was built for Mac OS X 10.12)
Expected in: /usr/lib/libSystem.B.dylib
Abort trap: 6
有什么想法吗?
【问题讨论】:
-
我认为您需要使用
brew rm gcc删除您的gcc并使用brew install gcc --without-multilib重新安装。 -
这方面有进展吗?
-
@MarkSetchell 我试过了,但没有运气。
-
另一件事...尝试启动 Xcode 并运行更新 - 或者更好的是,卸载并重新安装 Xcode 并重新运行
xcode-select --install