Xcode 中 ld: library not found for -lstdc++.6报错解决

今天参与到了公司的一个老项目工程中,git拉下来后工程文件大小5个G,心中就有感觉掉坑里了。一运行就报了个库的错。


屏幕快照 2019-06-13 下午7.50.02.png

原来这是升级Xcode10后 废弃了libstdc++,相关的库文件libstdc++.6.0.9.dylib、libstdc++.6.dylib、libstdc++.dylib、libstdc++.6.0.9.tbd、libstdc++.6.tbd、libstdc++.tbd也从Xcode10中删除了。

知道后就好办了
1.解决办法一: 项目使用libc++而不是libstdc++ (由于自己接的工程,不熟悉,不想替换新的库修改各种报错,这条不用)
2.去用老Xcode的lib libstdc++.6.dylib、libstdc++.dylib、libstdc++.6.tbd、libstdc++.tbd 放到新Xcode的lib目录下(自己采用这个)

到后面自己发现了一个便捷的方法。
在github上有个开源,先下载下来这个项目,然后打开终端cd到libstdc--master文件夹,最后将install.sh拖到终端中执行即可。
devdawei/libstdc-

屏幕快照 2019-06-13 下午8.01.43.png

完美的解决了我的报错问题。当然如果报如下这个错误,那也是xcode 10 老库不存在的问题。

library not found for -lstdc++.6.0.9
library not found for -lstdc++.6
library not found for -lstdc++

记录
希望不要再遇到老工程了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容