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