【发布时间】:2015-08-29 05:10:18
【问题描述】:
我在我的新 Swift 2.0 项目中使用了一些来自谷歌的外部代码,这些代码在早期版本中需要“libz.dylib”。更新到新的 Xcode / 新的 SDK 之后。
Xcode 现在无法导入 libz.dylib 并抛出一些错误
架构 i386 的未定义符号: “_deflate”,引用自: +[GAICompressionUtil gai_dataByCompressingBytes:length:compressionLevel:mode:] 在 libGoogleAnalyticsServices.a(GAICompressionUtil.o) “_deflateEnd”,引用自: +[GAICompressionUtil gai_dataByCompressingBytes:length:compressionLevel:mode:] 在 libGoogleAnalyticsServices.a(GAICompressionUtil.o) “deflateInit2”,引用自: +[GAICompressionUtil gai_dataByCompressingBytes:length:compressionLevel:mode:] 在 libGoogleAnalyticsServices.a(GAICompressionUtil.o) “_inflate”,引用自: +[GAICompressionUtil gai_dataByInflatingBytes:length:isRawData:] 在 libGoogleAnalyticsServices.a(GAICompressionUtil.o) “_inflateEnd”,引用自: +[GAICompressionUtil gai_dataByInflatingBytes:length:isRawData:] 在 libGoogleAnalyticsServices.a(GAICompressionUtil.o) “inflateInit2”,引用自: +[GAICompressionUtil gai_dataByInflatingBytes:length:isRawData:] 在 libGoogleAnalyticsServices.a(GAICompressionUtil.o) ld:未找到体系结构 i386 的符号 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)
在“构建阶段”设置中查看可用包时,我可以找到“libz.tbd”,它似乎是 libz.dylib 的替代品。导入此库时,链接器错误保持不变,但我收到此附加警告:
警告:跳过文件'/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.0.sdk/usr/lib/libz.tbd'(意外的文件类型' text' 在框架和库构建阶段)
怎么办?
【问题讨论】:
-
尝试产品清除。如果它没有帮助。删除 Xcode 缓存和派生数据
-
我同意@LeoDabus 使用“产品清除”。作为一个新项目,添加这个 tbd(它代表什么?)将编译正常。
-
我已经清理并重建了孔项目 - 同样的问题!
标签: swift google-analytics swift2 ios9 google-analytics-sdk