Xcode 10 出现不支持 libstdc++6.0.9 解决方案

升级Xcode 10 后出现一下问题:

libstdc++6.0.9错误

原因是: 苹果早在 Xcode 8中 就废弃了libstdc++, 给了开发者两年时间过渡, 如今在Xcode 10中已不再支持. 在Build Phases > Link Binary With Libraries 中已经搜不到libstdc++的库了


Xcode 10 出现不支持 libstdc++6.0.9 解决方案_第1张图片
添加libstdc++

Xcode 10 更多特性 可以参考这里

解决方法:

苹果在XCode10中移除了libstdc++(libstdc++.6、libstdc++6.0.9)库。

项目解决方法:删除libstdc++(libstdc++.6、libstdc++6.0.9)库,然后添加libc++库。

删除步骤:
1、TARGETS—>Build Phases—>Link Binary With Libraries,删除libstdc++(libstdc++.6、libstdc++6.0.9) ,添加libc++;

如果有采用cocoapods管理第三方库的,还得继续:
2、Pods—>Targets Support Files—>Pods-XXXX.debug.xcconfig ,查找libstdc++(libstdc++.6、libstdc++6.0.9),将其删除;

3、Pods—>Targets Support Files—>Pods-XXXX.release.xcconfig ,查找libstdc++(libstdc++.6、libstdc++6.0.9),将其删除;

Xcode 10 出现不支持 libstdc++6.0.9 解决方案_第2张图片
参考图片

在第2步和第3步中删掉的依赖,有可能会在某些第三方框架源码方法出错,这时我们就可以追踪到哪个一个第三方框架还在使用libstdc++(libstdc++.6、libstdc++6.0.9),就可以知道找对应的开发者提供新的方法;或者直接不再使用该第三方框架。

直至2018-10-10,绝大部分常用的第三方框架已经支持libc++了,所以在第2步和第3步直接删除libstdc++(libstdc++.6、libstdc++6.0.9)后,便可运行模拟器与真机了

文章参考来源: 这里

你可能感兴趣的:(Xcode 10 出现不支持 libstdc++6.0.9 解决方案)