0

对于新的 OSX 10.9 和 Xcode 5 / 5.01,我在使用 Qt (4.7) 时开始出现链接错误的问题,错误消息如下:

ld:' ......' in _ __.o 包含架构 x86_64 clang 的未定义引用:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

我仔细检查了很多次,似乎我的代码都是正确的,并且在使用较低版本的 XCode(以及在其他操作系统上)之前,该项目已经成功构建了很多次。

在我检查了许多网站之后,没有运气如何解决这个问题。

所以我的问题是:有没有办法弄清楚链接器抱怨的缺失的“未定义引用”到底是什么?

4

1 回答 1

2

我们在 iOS 开发中看到了同样的问题。对于某些人来说,在关闭所有链接库的链接时间优化后它就消失了。确保所有二进制依赖项都是在没有它们的情况下构建的。

找到罪魁祸首的一种方法是使用 .o 列出 .o 文件中的所有未定义符号nm -u。然后从 NS* UI* 等常见和系统库中删除内容。然后您查看剩下的内容并尝试推断可能缺少的内容。

于 2013-11-05T19:36:06.750 回答