1.参考
2.实战
问题描述
手中的项目,在Mac系统升级或Xcode升级后,编译报错,报错信息为
Reason: no suitable image found. Did find:
/usr/lib/libstdc++.6.dylib: mach-o, but not built for iOS simulator
原因是XCode10 和 iOS12 中移除了 libstdc++ 这个库。如果项目依赖libstdc++,或者项目依赖的第三方库有依赖libstdc++。解决办法也很简单
如果是自己的项目有依赖libstdc++
在项目TARGETS-BulidPhases-Link Binary With Libraires中去掉libstdc++,添加上libc++即可
如果是项目依赖的第三方库有依赖libstdc++
需要更新第三方库版本即可。如果第三方的最新版本依旧依赖libstdc++,尽快反馈给第三方库的开发方。
但是还是会有别的原因不能去掉libstdc++
比如第三方库已经很久没有维护了,或者项目中使用的三方库版本比较老,贸贸然更新版本对项目影响比较大,时间又很紧,这里有一个暂时的解决办法。但是最终项目还是要更新依赖库的。
解决方案
在Xcode中添加stdc++.6.0.9文件
文件下载
添加文件
解压下载后的文件,cd到解压文件目录,直接编译install.sh,编译后重启Xcode即可。真机和模拟器均可正常运行