2013-10-10 31 views
1

我想鏈接動態庫(dylib)在mac mountian獅子。沒有我嘗試過的。動態庫鏈接上最大的山獅

$ GCC的main.cpp -l在/ usr/local/lib目錄/ libopencv_core.2.4.6.dylib LD:庫找不到-llibopencv_core.2.4.6.dylib

圖書館存在:

$ LS /usr/local/lib/libopencv_core.2.4.6.dylib /usr/local/lib/libopencv_core.2.4.6.dylib

我使用鐺得到相同的空結果。 使用otool揭示的依賴......

$ otool -L /usr/local/lib/libopencv_core.2.4.6.dylib /usr/local/lib/libopencv_core.2.4.6.dylib: LIB/libopencv_core.2.4.dylib(兼容版本2.4.0,當前版本2.4.6) /System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL(兼容版本1.0.0,當前版本1.0.0) /usr/lib/libstdC++。6.dylib(compatibility version 7.0.0,current version 56.0.0) /usr/lib/libSystem.B.dylib(compatibility version 1.0.0,current version 169.3.0)

我不確定問題是什麼,它可能是一個版本問題, 我不知道。 我可能錯過了一些簡單但很重要的事情:有誰能告訴我我錯過了什麼嗎?

回答

0

爲了指庫的文件名:使用

libMyLib.{a,so,dylib} 

-l命令行選項,您使用以下形式:

-lMyLib 

那麼試試這個:

$ gcc main.cpp -L/usr/local/lib -lopencv_core 

(也請注意,通常不希望鏈接最版本的動態庫的時間,所以我已經從命令行中刪除了它)。