2011-12-07 59 views
0

我有一個靜態庫(非常簡單,沒有包含),它可以用「-arch i386」構建,我可以在這個庫中使用demo方法,並且一切正常。像往常一樣,我有一個.a文件來鏈接我的項目。無法爲archvv7編譯靜態庫

不幸的是我想在iOS項目中使用這個庫,所以當我使用iPhone模擬器時,一切都很好,用「-arch i386」構建的庫(因爲這是模擬器使用的處理器)。如果我現在想爲基於ARM的iPhone設備構建帶「-arch armv7」(或「-arch armv6」)的庫,那麼我將在Eclipse中和Xcode中獲取相同的錯誤消息:(在Xcode中):llvm-gcc -4.2失敗,退出碼爲255。 Eclipse中的相​​同退出碼(255)。隨着「i386」一切正常。

我必須在OSX Lion上安裝除了我的Xcode 4.2.1以外的任何東西來編譯我的ARM-Device的lib文件嗎?

+1

必須有不僅僅是退出代碼 - 在錯誤消息之前檢查輸出。 – Till

+0

不幸的不是。只有「返回255」。 255可能是一個「全部捕獲」的信息,我沒有找到包含gcc錯誤代碼的列表。 –

回答

0

問題在於,Xcode 4爲每個構建構建靜態庫而不是一個統一的通用構建。所以我的猜測是,你只是添加了構建調試模擬器,而不是調試設備。最好的辦法是,在靜態庫中添加一個腳本,將它們合併爲一個。

This post這就是我拯救了我的生命。希望它也能幫助你。