今天手欠將Xcode升級到了Xcode10帖汞,不想蘋果還是和以前的套路一樣,讓你崩潰讓你煩凑术,下面是我升級后遇到的兩個問題翩蘸,在Xcode9中運行代碼工作,但在Xcode10中產(chǎn)生錯誤淮逊。搞了一天終于解決了催首,記錄下,希望幫助后續(xù)入坑的同學(xué):
一壮莹、
這里問題可能只因應(yīng)用程序中的多個Plist文件而發(fā)生的翅帜;
解決方案:
?打開 target > Build phase > Copy Bundle Resource/Compile Sources > 刪除 info.plist
然后編譯運行姻檀,發(fā)現(xiàn)還是報錯:提示命满,遇到問題
library not found for-l"stdc++.6.0.9"
原因:這個錯誤原因是因為iOS12.0中去掉了lstdc++.6.0.9.tbd動態(tài)庫,如下圖搜索便知
iOS12.0中全部采用libc++代替lstdc++的動態(tài)庫(如下圖)绣版,具體原因可以參考:
http://www.cnblogs.com/wellbye/archive/2013/04/25/3039203.html?
真機:
最簡單解決該問題的方法就是從Xcode9.4中找到動態(tài)庫lstdc++.6.0.9.tbd文件copy到Xcode10beta下就可以完美解決問題胶台〖叽或者用古老的辦法將iOS12的DeviceSupport文件copy到Xcode9.4下也可以完美解決Xcode9.4運行iOS12的問題。
在應(yīng)用程序里找到Xcode10 诈唬,右擊顯示包內(nèi)容contents
真機路徑:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib
模擬器路徑:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib
把在Xcode 9上復(fù)制下來的 libstdc++.6.0.9 文件拷貝以上兩個路徑下韩脏,就可以正常運行了。
我的問題到這就已經(jīng)解決了铸磅,這只是暫時的解決辦法赡矢,最后還是等待一些第三方適配iOS12 就能完美解決了。