iOS12 Xcode10 libstdc++6.0.9遇到的相關問題

昨天才更新的xcode,事實證明,還真是自己給自己挖坑。剛更新完,嘗試運行項目,然后就崩潰了。原因如下:

1

然后百度,google,得知結論是:
Xcode10:libstdc++libstdc++.6libstdc++6.0.9被替換合并成為 libc++了(我是這么認為的)。

  • 先說網上給的方法是:

去Xcode 9里面的
真機路徑

/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/

里面的libstdc++6.0.9分別復制一份,
然后分別粘貼到對應的Xcode 10 的
真機路徑和

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/usr/lib/

模擬器路徑下

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib/
  • 模擬器編譯就能成功,但是會出現下面這樣的錯誤


    2

    可能是XCode10自帶的iOS12模擬器的問題,在XCode10中安裝iOS11的模擬器運行環境,然后切換到iOS11模擬器運行,就OK了

  • 使用iOS12的真機運行,沒有啥太大的問題

  • 再說說在我的項目當中的解決方法吧。

我的APP項目中,唯一用到libstdc++6.0.9的地方就是高德地圖,然后我去pod search 了一下,發現AMap3DMap最新版本是6.4.0,果斷更新了一下(pod 'AMap3DMap','~>6.4.0'),然后.....什么問題都沒有了,沒有所謂的Xcode9復制粘貼到Xcode10什么什么亂七八糟的,就簡單的更新一下第三方,什么都解決了。
當然,如果你們公司是自己封裝的私有靜態庫,那就更新靜態庫吧,如果不更新,那就采用最上面的那種方法吧。
希望能幫到你。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 姓名:姜嬌 體式名稱:側板式 束角式
    axl好好閱讀 151評論 0 0
  • 清音曳小窗。 苦夢落誰旁。 晚暮嫌夕短, 今宵恨夜長。
    點下閱讀 392評論 0 5
  • Sunny,我的閨蜜。 打電話約我走路,說她已經走了半個月了,還挺能堅持。胖了這么久,終于開始減肥了。 ...
    一株麥苗和一只貓閱讀 204評論 0 1
  • 和老公結婚真的是一部小說,三個月我不顧家里強烈反對決定了結婚生子人生大事! 婚禮波折不得不說準婆婆彩禮都不想給,是...
    飛揚90閱讀 193評論 0 0