0
我试图编译一个程序,引用__dyld_func_lookup
。未定义的符号:__dyld_func_lookup为MacOSX 64位链接错误10.6.7
一切正常编译,表明包含文件能够找到函数引用。然而,在最后的链接,我得到这个错误:
g++ -o ../lib/macosx64/libcogmapapi.dylib -dynamiclib ./build/CogMapApi.o ./libs/cmlabs/macosx64/AIR.a ./libs/cmlabs/macosx64/CoreLibrary.a
Undefined symbols:
"__dyld_func_lookup", referenced from:
_reference in CoreLibrary.a(dlfcn_darwin.o)
_dllopen in CoreLibrary.a(dlfcn_darwin.o)
_dllopen in CoreLibrary.a(dlfcn_darwin.o)
_dllopen in CoreLibrary.a(dlfcn_darwin.o)
ld: symbol(s) not found
collect2: ld returned 1 exit status
我使用的连接器-undefined dynamic_lookup
试图和它链接正常,但随后在运行时,我得到未定义的符号,因为我实际引用__dyld_func_lookup
在我的代码。我猜我需要链接到一些dylib或框架,但我所尝试的一切,如系统和libdl.dylib似乎没有工作。
任何帮助将不胜感激!
请问能否详细说明这个问题,对于那些来自谷歌的人来说呢? ¯\\ _(ツ)_/ – Chris 2018-01-16 04:30:11
@Chris什么不清楚你? – 2018-01-17 00:10:24
没有上下文提供的上下文。你在Xcode中设置链接吗?或者你从命令行直接向GCC/LLVM传递一个标志? – Chris 2018-01-23 18:42:12