【发布时间】:2014-02-22 01:15:45
【问题描述】:
这只发生在一台机器上,一台 Mac mini 构建服务器。 armv7s 也有同样的错误。它适用于几个 Ubuntu 构建代理和我的本地机器(Macbook Pro)。这些服务器都有相同的:
- XCode 版本 (5.0)
- Podfile/Podfile 锁定
- Pod 缓存(在每台机器上清除)
- Maven 版本 (3.1.1)
- Cocoapods 版本 (0.29.0)
正在使用的 pod 是 TTTAttributedLabel:
[INFO] Undefined symbols for architecture armv7s:
[INFO] "_kCTUnderlineStyleAttributeName", referenced from:
[INFO] -[TTTAttributedLabel commonInit] in libPods.a(TTTAttributedLabel.o)
但是 TTTAttributedLabel 没有用作 pod,它的源代码被直接粘贴到另一个添加到此项目的私有 pod 中。我不知道为什么,因为我没有开发它并且没有开发它的开发人员。 TTTAttributedLabel 的源代码以某种方式进行了定制,因此我不喜欢更改它,因为这是一个生产版本。
所以我有一个主项目,其中包括一个私有 pod,它的源代码中直接包含来自 TTTAttributedLabel 的代码。
私有 pod 确实安装正确。 TTTAttributedLabel 文件包含在私有 pod 的编译源中。 libPods.a 似乎在 XCode 中正确链接。主项目和 pod 的有效架构都是相同的(armv7 和 armv7s)。
在过去约 6 小时内,我尝试了几乎所有在互联网上可以找到的答案。
为什么这个服务器找不到这些符号?为什么它在除此处之外的任何地方都有效?
【问题讨论】:
标签: ios xcode maven xcodebuild cocoapods