ld: library no found for -lstdc++.6.0.9

[Xcode10]
问题:Xcode9升级到Xcode10后运行App报错:
ld: library no found for -lstdc++.6.0.9

因为Xcode10中libstdc++.6.0.9和libstdc++被移除,Frameworks中libstdc++.6.0.9libstdc++找不到对应的库,报红。

方案1、

Xcode9中拷贝 -lstdc++.6.0.9以及libstdc++等库到Xcode10中(真机和模拟器都需要拷贝)
终端输入命令,打开Xcode的lib库目录,将需要的库文件从Xcode9目录下拷贝到Xcode10目录下:
打开命令如下:
1)真机:
open /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib
2)模拟器:
open /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib

库下载
链接: https://pan.baidu.com/s/1Ygp4UewliaIZJxpSUrnsMQ 提取码: xrgx
这样真机和模拟器都可以运行了, 两个地方只要配置任意一个你需要的模式。

方案2、

1.把工程引用的libstdc++.6.0.9和libstdc++ 相关的库都删除(TARGETS - General - Linked Frameworks and Libraries)。 检查工程以及使用的第三方存不存在依赖这两个库的情况,如果存在可参照第三方官网提出来的解决方案升级。

2.设置项目的编译方式


C++库的编译方式

其他IOS开发

IOS 国际化设置
XCode 真机调试

你可能感兴趣的:(ld: library no found for -lstdc++.6.0.9)