1. 程式人生 > >關於Xcode10中libstdc報錯問題的解決

關於Xcode10中libstdc報錯問題的解決

遇到問題

由於iPhoneXS以及iphoneXS_MAX在沒有使用LaunchImage時,仍以iphoneX的為主,對適配不會產生什麼影響。

iPhoneX_R在10月19號開始預訂,26號出貨,因此適配新機型迫在眉睫。由於沒有拿到新機型,只能使用模擬器進行適配瀏覽。

使用Xcode10真機編譯後,發現一直報錯,報錯內容如下:

報錯顯示沒有找到libstdc++.6.0.9這個庫,因此準備去Link Binary With Libraries中新增,進入後發現系統並沒有提供該庫.

碰到這個系統性的問題後,去官方論壇了搜尋了一番,發現官方提供了解決的方案。官方的意思是libstdc++ 已經標記為廢棄有5年了,建議大家使用全面支援C++11的 libc++ 庫

解決方法

  1. 真機

    libstdc_iPhoneOS拷貝到/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib

  2. 模擬器

    libstdc_iPhoneSimulator拷貝到/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib/

    libstdc_iPhoneSimulator_runtime

    拷貝到/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/usr/lib/