2012-03-24 42 views
3

我編譯了一個庫,並有對象文件(.o)。現在我想用ar來將它們組合在一個靜態庫中。我能夠做到這一點,但是當我在iOS項目中添加該文件時,它說該庫是存檔類型,而鏈接架構是arm7。我如何解決這個問題?如何結合目標文件(.o)爲iOS創建靜態庫(.a)?

解決

AR -crs libstatic.a *的.o 以前我是用從iOS版SDK中的AR,我想這就是爲什麼它是失敗的。

回答

2

迄今爲止最好的資源我都對議題發現是在這裏:

http://sgleadow.github.com/blog/2011/10/28/universal-static-libraries-and-frameworks-for-ios/

這是一個漫長的過程 - 但每一步是必不可少的得到這個正常工作。

+0

感謝,但其不正是我所期待的。 – Salil 2012-03-24 17:02:50

+0

對不起 - 但最後它是:)。如果您爲單個架構創建靜態庫 - 這是因爲您的構建設置未正確配置。您需要退後一步並根據這些準則設置您的項目,並且您的問題將消失。 – dtuckernet 2012-03-24 17:04:03

+0

我沒有任何XCode項目開始。它是一個我正在編譯的C庫,它固有地不會產生一個lib.a,通常這些庫在生成它們時產生。當然,我不知道如何在配置或Makefile中進行更改來強制它創建一個靜態庫。 – Salil 2012-03-24 17:10:33

2
ar -rcs libexample.a *.o 

鏈路與開關庫:

-lexample 
相關問題