关于Xcode 10.0编译不通过的问题 stdc++.6.0.

2018-09-28  本文已影响0人  似奔跑的野马

1.编译问题

项目在Version 9.4 (9F1027a) 上运行没有问题,在Xcode10正式版运行项目时,发现,编译不过。报如下错误,



从报错可以看出,图中高亮区域,使用了-lstdc++.6.0.9.

解决方法

找到对应之前Xcode9的目录,找到libstdc++.6.0.9.tbd这个文件拷贝到新的Xcode10中。

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib

如果自己卸载了,再下载比较麻烦,以下我提供一个
libstdc++链接

上面方法可以临时解决,另外一种方法就是删除对应的库。


20181101145301877.png
//删除下面的库,换成libc++.
libstdc++
-lstdc++
-lstdc++.6.0.9
-libstdc++.6.0.9.tbd
libstdc++.6.0.9.dylib

在旧版生成的framework中,如何oc和c++混编,使用之前的stdlibc++库,无法找到对应的头文件会报错。



那么此时你就必须在Xcode10实现新的libc++了。


选择libc++

2.设备信任


iOS12设备运行app,需要信任,打开苹果的设置-->设备与描述文件(iOS12显示设备管理)-找到对应的开发者账号点击信任即可

3. Multiple commands produce 编译问题


某些项目会出现上述错误,可以通过File-->Project Settings - Build System 设置成Legacy Build System解决。

NOTE:Xcode 10.0 运行要求的Mac OS 系统是10.13.6及以上

上一篇下一篇

猜你喜欢

热点阅读