我實際上正在爲iPhone開發一個應用程序,我需要使用一個庫,最初專用於Linux環境。由於我使用Mac(與雪豹和英特爾酷睿),我想這是可以在我的應用程序中使用這個庫。我的庫有3個文件:一個文件.h,一個文件.a和一個文件.so(.a和.so都在/ Developer/usr/lib中)。另外我已經包含了.h我的nmy代碼,並且我在XCode中添加了一個.a框架(並且它的工作原理是因爲XCode找到.so編譯)。在Xcode中使用庫的問題
您的信息,當我使用命令「文件」爲的.so文件,我有: ELF 32位LSB的共享對象,英特爾80386,版本1(SYSV),動態鏈接的,不剝離
當我編譯Xcode模擬器時,我有一個警告和一個錯誤。
的警告是:
在/Developer/usr/lib/mylib.so,文件是專爲不支持 文件格式是不是架構被鏈接(I386)
錯誤是: 「_mylib_fct」,從引用:
- [MyAppAppDelegate applicationDidBecomeActive:]在 MyAppAppDelegate.o
符號(一個或多個)未發現
Collect2:LD返回1 退出狀態
當我編譯爲設備3.0架構ARM6,我也有相同的錯誤,但警告是完全不同的:
LN /Users/Pablo/MyApp/mylib.a文件不是必需的體系結構
我嘗試解決這個,使應用程序,因爲天這個LIB的工作,和我不不明白編譯器爲什麼抱怨...是32/64位的問題嗎?我該如何處理?
謝謝,因此我不得不要求庫的作者使用MACH圖像重新創建它? 有沒有解決方法,因爲該作者不支持Mac OSX? – Pablo 2010-06-02 10:45:09
如果庫作者正在提供源代碼,則可以嘗試在Mac OS X上編譯它。 – diciu 2010-06-03 03:32:20