【问题标题】:Why can't I get rid of libstdc++?为什么我不能摆脱 libstdc++?
【发布时间】:2018-09-10 11:43:16
【问题描述】:

自从升级到 xcode 10 beta 6 后出现错误

ld:找不到 -lstdc++ 的库
clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

我知道 libstdc++ 已从 iOS 模拟器中删除,但项目和所有目标都将 C++ Standard Library 设置为 libc++,而不是 libstdc++

该项目在Other Linker Flags 中没有设置任何内容。目标的Other Links Flags 的摘要包括-stdlib=libstdc++

但是当我双击它进行编辑时,它不在列表中。

什么是偷偷溜进 libstdc++ 的?任何帮助将不胜感激!

【问题讨论】:

    标签: ios xcode linker xcode10


    【解决方案1】:

    原来问题在于我的一个依赖项使用了libstdc++,因此 Cocoapods 将-stdlib=libstdc++ 添加到项目的链接器标志中。

    解决方案是将依赖项更新为针对 libc++ 构建的较新版本。

    如果其他人无法识别哪个依赖项正在使用libstdc++,那么我建议从目标的链接器标志中删除$(inherited)。这将导致链接器从使用它的地方报告丢失的符号,从而泄露哪个库有问题。

    【讨论】:

      猜你喜欢
      • 2014-05-27
      • 2011-04-28
      • 2021-12-29
      • 2022-09-23
      • 1970-01-01
      • 2019-06-07
      • 1970-01-01
      • 1970-01-01
      • 2012-07-29
      相关资源
      最近更新 更多