升级Xcode 10 后出现一下问题:
libstdc++6.0.9错误
原因是: 苹果早在 Xcode 8中 就废弃了libstdc++, 给了开发者两年时间过渡, 如今在Xcode 10中已不再支持. 在Build Phases > Link Binary With Libraries 中已经搜不到libstdc++的库了
添加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),将其删除;
参考图片在第2步和第3步中删掉的依赖,有可能会在某些第三方框架源码方法出错,这时我们就可以追踪到哪个一个第三方框架还在使用libstdc++(libstdc++.6、libstdc++6.0.9),就可以知道找对应的开发者提供新的方法;或者直接不再使用该第三方框架。
直至2018-10-10,绝大部分常用的第三方框架已经支持libc++了,所以在第2步和第3步直接删除libstdc++(libstdc++.6、libstdc++6.0.9)后,便可运行模拟器与真机了
文章参考来源:
这里
网友评论