當我得到第三方靜態庫時,我可以在我的調試或發佈版本中爲模擬器和設備使用它。但是,當我在本地構建時,它將針對調試模擬器/設備或發佈版本。然後我必須協調我的主機應用程序以匹配庫構建。我如何創建一個與許多第三方靜態庫的主機應用程序的所有構建版本一起工作的單個靜態庫構建?爲所有版本創建靜態庫
0
A
回答
1
我不認爲這有一個「神奇」的iPhone解決方案。 我曾經找過相同的東西沒有找到任何「易於使用」的解決方案。 最好的,我能找到: http://www.clintharris.net/2009/iphone-app-shared-libraries/ 特別是有關「胖庫」的部分,這是指http://latenitesoft.blogspot.com/2008/10/iphone-programming-tips-building-unix.html 但製作配置看起來不容易(至少對我來說)。
我這樣做的方式: 我爲我需要的所有配置(模擬器x86調試和設備臂調試)分別構建靜態庫。這給了我兩個不同的.a文件。 我給他們改名mylibrary_arm.a和mylibrary_x86.a
然後,對於希望使用這些庫2,我拖放兩個.a文件到需要的。一個庫+的客戶項目中的任何項目。 h頭文件,可以使用這些庫。 然後,當我在這個客戶端項目中選擇模擬器或設備時,編譯器選擇正確的.a AUTOMATICALLY進行編譯並正確運行。
所以最後,唯一枯燥的phasis是.a自己的代,但它們的使用非常簡單,XCode自動調整自己。
相關問題
- 1. 爲iPhone創建靜態庫
- 2. 構建QT庫的靜態版本
- 3. 構建Poco C++庫的靜態版本
- 4. 靜態庫創建
- 5. 創建靜態庫
- 6. 使用Windows編譯器創建調試版本FFMpeg靜態庫
- 7. 爲iOS創建靜態鏈接庫
- 8. 爲android創建靜態庫lib
- 9. 爲iOS創建OpenFeint靜態庫
- 10. 爲第三方靜態庫創建podspec
- 11. 使用靜態庫創建私有cocoapods
- 12. iPhone靜態庫創建
- 13. 創建靜態庫Visual Studio
- 14. 創建靜態庫混淆
- 15. 創建靜態庫時嵌入所有外部引用
- 16. 鏈接庫的靜態版本而不是動態版本
- 17. 爲所有頁面創建靜態頁眉(xamarin)
- 18. 創建依賴於其他的靜態庫(RestKit)靜態庫
- 19. 如何從多個靜態庫中創建一個靜態庫?
- 20. 創建一個引用其他靜態庫的靜態庫
- 21. 在XCode中創建靜態庫的靜態庫
- 22. iPhone SDK靜態庫版本號
- 23. 從靜態庫中獲取版本號
- 24. Xcode:多個版本的靜態庫
- 25. 在Xcode中爲tesseract ocr創建靜態庫並綁定MonoTouch中的靜態庫
- 26. Delphi有可能爲iOS創建一個靜態庫嗎?
- 27. 如何爲具有靜態庫目標的項目創建PodSpec?
- 28. 構建QT靜態版本5.0.2
- 29. 你將如何創建UIPopoverView的靜態版本?
- 30. 使用Qt創建器的靜態版本
好的,好主意。我猜測結果.app文件將只包含與其構建相對應的.a文件? – 4thSpace
由於這是一個靜態鏈接,因此您不會在.app文件中看到最終的.a文件(爲當前選定的目標生成一個可執行文件)。 但是,如果我查看生成的二進制大小,它看起來非常正確=沒有無用的可執行代碼似乎嵌入到此二進制文件中。 – yonel
您是否爲模擬器和設備創建調試/發佈版本,並在主機項目中最終生成四個版本的庫文件?我注意到,如果項目中有兩個相同的文件名 - 模擬器和設備的mylib_debug.a,則Xcode不會投訴。 – 4thSpace