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/
  • 模拟器编译就能成功,但是会出现下面这样的错误


    iOS12 Xcode10 libstdc++6.0.9遇到的相关问题_第1张图片
    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什么什么乱七八糟的,就简单的更新一下第三方,什么都解决了。
当然,如果你们公司是自己封装的私有静态库,那就更新静态库吧,如果不更新,那就采用最上面的那种方法吧。
希望能帮到你。

你可能感兴趣的:(iOS12 Xcode10 libstdc++6.0.9遇到的相关问题)