2017-06-20 105 views
0

這個問題讓我感到非常緊張。在我宣佈它是XCode中的一個錯誤並嘗試使用其他版本的XCode之前,我在這裏問它。XCode創建半個靜態庫

所以,我正在使用XCode 8.3.2。我有一個生成靜態庫的項目。我將.a文件移動到另一個項目中,然後使用它(我知道我可以將靜態庫項目集成到第二個項目中,但我不想在這裏)。

生成的文件是4.4MB。複製新創建的.a並將其複製到第二個項目並測試後,一切正常。但是當我回到圖書館項目並構建它時,生成的文件爲2.3MB,缺少符號!

我不能讓它工作,除非我重新啓動我的MAC,或者莫名其妙的XCode崩潰。

我曾嘗試:清潔工程,乾淨的文件夾,刪除派生數據,在我的目標連接標誌添加-all_load -force_load -ObjC標誌。

如果任何人有什麼正在發生什麼想法,請通知我。 謝謝!

+0

可能是第二次,您在建立時從胖庫中刪除了一片。 –

+0

我不太明白你的意思。但是除了將庫複製到另一個位置之外,我沒有在兩個版本之間做任何事情。我認爲這是一個XCode緩存問題。 –

+0

第一次和第二次操作時的設備類型是什麼? –

回答

2

它取決於您在建立圖書館期間選擇的目標設備。在Xcode中,當您選擇任何特定的模擬器或設備時,Xcode只會創建單個切片或精簡產品。 enter image description here enter image description here 如果您選擇通用iOS設備,則表示沒有設備或模擬器,那時Xcode創建包含所有設備切片的庫和包含模擬器切片的一個文件夾。

使用LIPO命令,你可以把模擬器和設備一起切片。

在你的情況下,在第一和第二次,你從通用的iOS設備更改設備目標特定的設備。

+0

謝謝你讓我看傻了,呵呵:P –

+0

這是在Xcode的靜態功能,當我選擇我的iPhone在第二個項目來運行它時,Xcode變化也於庫項目。 –