ios12适配踩得坑

一、 libstdc++ 库  和 libc++

xcode10中 项目用到了c++,依赖了libstdc++.tbd和libstdc++.6.0.9.tbd,导致整个工程编译不通过,报出Undefined symbols,C++ 的 List 找不到了,原因是苹果在XCode10和iOS12中移除了libstdc++这个库,由libc++这个库取而代之,苹果的解释是lib转载自斗玩网stdc++已经标记为废弃有5年了,建议大家使用经过了llvm优化过并且全面支持C++11的libc++库。 

网上有兄台给出了就;临时的解决方案讲xcode9中 libstdc++ 库导入到xcode10中:

cp /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib/libstdc++.* /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib/cp /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib/libstdc++.* /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib/

你就可以在新XCode10下面看到libstdc++了,放心的添加到工程里。

但这只是临时的解决方案,如果你自己的业务模块使用了libstdc++,那么就把模块代码重新调整为依赖libc++,然后重新检查是否存在问题,重新编译

如果你引用的第三方厂商提供的sdk中依赖了libstdc++,那么抓紧联系厂商,需求版本升级。

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

推荐阅读更多精彩内容

  • two Last login: Tue Aug 4 17:09:57 on ttys000 yushengyang...
    aofeilin阅读 1,089评论 1 9
  • 首先如果遇到应用卡顿或者因为内存占用过多时一般使用Instruments里的来进行检测。但对于复杂情况可能就需要用...
    攻克乃还_阅读 2,048评论 0 7
  • 放一篇之前一直在私人笔记里的参考,也就是个参考手册,用到的时候回来看看。 ‘$’ 作为引用关键字 ex:$PROJ...
    SMThree阅读 3,994评论 0 13
  • 为什么打出的静态库要支持这么多架构? 看看这个文章:http://blog.csdn.net/zuoyou1314...
    今年27阅读 1,473评论 3 3
  • 更改脚本执行权限 chmod u+x test.sh更改其可执行权限 网址 https://curl.haxx.s...
    吾乃常山赵子龙阅读 466评论 0 0