2013-02-06 30 views
0

閱讀this awesome post by Tristan後,他編譯了FreeTDS以供iOS使用,我試圖編譯UnixODBC以供在iOS中使用。我能夠得到它編譯,這是偉大的。將.dylib或.la文件導入到iOS項目中

然而,當我編譯freetds的,我有一個.A文件,我能很容易地納入了XCode(少數.H文件一起)。這一次,編譯器並沒有生成.a文件。相反,它生成了一個.la和一個.dylib文件。到目前爲止,我還沒有能夠在我的iOS項目中使用這些文件。

如果我能做到以下任何一種,我想我的問題將得到解決:
        1.重新編譯的unixODBC,使其產生.A文件,或
        2.轉換要麼.la名爲.dylib.A文件,或
        3.導入無論是.la名爲.dylib到我的項目,所以我可以用它以同樣的方式,我會用一個.A文件。

到目前爲止,我對於如何做這些事情(或者甚至有可能)都無能爲力。任何人都可以幫助我嗎?

謝謝!

-Rob

回答

1

.dylib文件動態鏈接庫,而.a文件靜態鏈接的人(只是谷歌這兩個表達式)。 .la文件現在是無關緊要的,他們是不是必需的,它們不包含任何代碼,

如果unixODBC數據的configure腳本支持的話,你可以指定--enable-static --disable-shared選項,以使建設。一個存檔,而不是dylib。如果配置腳本不接受這些標誌,那麼您可以繼續編譯源文件(它將通過配置完成),然後使用ar命令將.o目標文件放在一起,而不是採用生成的dylib形成一個靜態檔案。

+0

謝謝!這聽起來像它會解決我的問題。我會試試這個報告,如果它有效的話。 – Rob