2013-09-11 21 views
32

我們剛剛更新到XCode 5 GM,而在DP 5下構建的項目(iPhone只針對iOS 7)現在出現以下錯誤:XCode 5 GM鏈接器錯誤:對於體系結構i386功能匿名中的太多緊湊展開信息i386

ld: in /Users/dan/Documents/Projects/ImageProApp/Pods/SparkInspector/SparkInspector.framework/SparkInspector(ExplorerViewState.o), too many compact unwind infos in function anon for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

我們正在使用的CocoaPods包括幾個組件,CocoaAsyncSocket,CocoaLumberack,星火督察和可達性。我的猜測是,我們要刪除Spark Inspector,這個錯誤只會引用另一個組件。

任何人都可以推薦一個修補程序嗎?告訴我什麼編譯器/鏈接器標誌將使用非緊湊展開信息?

感謝,

+0

這可能是一個椰子樹問題。可以很好地在Github上打開一個問題。 https://github.com/CocoaPods/CocoaPods/issues?state=open – ray

+0

@ray當你存檔時,目前的cocoapods的確存在一個問題。 https://github.com/CocoaPods/CocoaPods/pull/1352 – mattyohe

+1

@mattyohe嗯,我可以在更新Build Active Architectures for Debug配置文件後將我的應用存檔就好。但是,在瞄準模擬器時,鏈接仍然失敗,所以我傾向於認爲這個特定的問題與今天剛剛介紹的64位的東西有關,而模擬器沒有爲它裝備......不知何故。 – ray

回答

7

解決方法:建立設備。

沒有太多的修復,但嘗試建立你的應用程序的設備,而不是模擬器。可能與64位的引入有關。

我可以將我的應用程序歸檔,但是當我嘗試構建/運行模擬器時,它在與您收到的同一錯誤進行鏈接時失敗。

要清楚,我也使用椰子樹。

33

UPDATE: 谷歌發佈了一個補丁爲谷歌分析庫 https://code.google.com/p/analytics-issues/issues/detail?id=338

見版本V3.01這裏: https://developers.google.com/analytics/devguides/collection/ios/resources

FWIW,與谷歌Analytics(分析)庫,鏈接錯誤僅發生時部署目標設置爲7.0。如果將部署目標放置到6.1,例如鏈接工作沒有錯誤。

僅供參考,關於Google Ananlytics,我已在Google's bug tracker中發佈了一個問題。

+0

太棒了!它的工作原理,但我想解釋*爲什麼*,因爲我在SIM卡中構建iOS7。 – ray

+0

已確認的v3.01現在可與Deployment Target 7.0配合使用。 – TalkLittle

+0

是的,我也確認。這不是一種解決方法,這是擺脫消息的最佳方式。 – Martin

7

改變「iOS的部署目標的東西小於 」的iOS 7.0「

」項目「 - >構建設置 - >部署

工作對我來說, 我想它有什麼 我當時只是在模擬器中遇到問題,當包含Jot Touch SDK

+0

與Jot Touch SDK相同的問題。適用於設備,但不適用於iOS 7模擬器。 – seeker12

1

這個答案可能會晚一點,但是我有與第三方框架相同的問題。 出於某種原因,我們已經將-all_load標誌添加到構建設置,但是當我刪除它時,我們能夠構建項目。

所以去:

項目 - >構建設置 - >其他連接標誌

並刪除-all_load標誌。

希望這會有所幫助。

相關問題