剛升級的xcode 10遇到了兩三個小問題,寫下來記錄一下
1. xcode 10取消了內置支持的 libstdc++ 庫
xcode10取消了內置支持libstdc++庫,然而咱們項目里用的有些sdk里邊必須用這個庫,這樣問題就來了
2121032-bf125e3049a17132.png
解決這個問題的最終方案肯定是等這些sdk升級新版本之后,支持Xcode 10這一新特性,然后咱們去升級新的sdk,這樣就完美解決了。
現實問題是,大部分sdk現在并沒有去完美的適配Xcode 10,這時候對于咱們來說就需要一個折中的方案了,步驟如下:
a、去老的Xcode版本里,
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib,
這個路徑下,把libstdc++.tbd,libstdc++.6.tbd, libstdc++.6.0.9.tbd 這三個文件拷貝下來
b、在來到Xcode 10中,同樣的路徑下,把這三個文件粘貼進去就完事了
需要注意的是,這個步驟做完之后,你會發現項目在模擬器上依然無法運行
這是因為對于模擬器來說由于iOS12的模擬器將libstdc++.6.tbd & libstdc++.6.0.9.tbd已經刪除,即使復制了文件,依然會報錯
所以你就只能先湊合著跑真機了,等新版本sdk完美適配Xcode 10之后再來根治這個問題。
2. xcode 10對于重復文件的檢測
舉個例子來說,項目里有兩張重復的圖片時,這時候就會報錯。不過這個問題好解決,把重復的刪掉,就OK了
3. 改回之前的運行環境
刪除重復文件時有的可能都刪除不了,這時候就去把運行環境改到之前的環境,操作如下
xcode--file--Workspace Settings--Build System--legacy Build System
4. 對于使用cocoapods的用戶來說
新的Xcode環境還是需要重新pod install一下,這是我看網上這么說的,我就直接pod install了,所以不清楚如果不pod install會有啥情況發生