我在我的新的SWIFT2.0项目中使用了谷歌的一些外部代码,在早期版本中需要"libz.dylib“。在更新到新的Xcode /新SDK之后。
Xcode现在无法导入libz.dylib并引发一些错误
未定义的建筑符号:"_deflate",引用于:+GAICompressionUtil gai_dataByCompressingBytes:length:compressionLevel:mode: in libGoogleAnalyticsServices.a(GAICompressionUtil.o) "_deflateEnd",引用于:+GAICompressionUtil gai_dataByCompressingBytes:length:compressionLevel:mode: in libGoogleAnalyticsServices.a(GAICompressionUtil.o) "deflateInit2",引用于:+GAICompressionUtil gai_dataByCompressingBytes:length:compressionLevel:mode: in libGoogleAnalyticsServices.a(GAICompressionUtil.o) "_inflate",引用来源:+GAICompressionUtil gai_dataByInflatingBytes:length:isRawData: in libGoogleAnalyticsServices.a(GAICompressionUtil.o) "_inflateEnd",引用于:+GAICompressionUtil gai_dataByInflatingBytes:length:isRawData: in libGoogleAnalyticsServices.a(GAICompressionUtil.o) "inflateInit2",引用于:+GAICompressionUtil gai_dataByInflatingBytes:length:isRawData: in libGoogleAnalyticsServices.a(GAICompressionUtil.o):libGoogleAnalyticsServices.a(GAICompressionUtil.o) i386 clang: error: linker命令在退出代码1中失败(使用-v查看调用)
在查看“构建阶段”设置中的可用包时,我可以找到"libz.tbd“,它似乎是libz.dylib的替代品。导入此lib时,链接器错误保持不变,但我会收到以下附加警告:
警告:跳过文件'/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.0.sdk/usr/lib/libz.tbd‘(框架和库构建阶段中意外的文件类型“text”)
该怎么办呢?
发布于 2015-06-13 19:45:26
我也有同样的问题。我找到了一条路。
发布于 2015-09-09 12:57:38
libz.dylib现在被发现在libz.tbd quote from the Apple developer forums下面
对于那些好奇的人来说,.tbd文件是新的“基于文本的存根库”,为SDK中使用的存根库提供了一个更加紧凑的版本,并帮助大大减少了它的下载大小。
希望很快会有更多的文档。
编辑
为了清理它,我将引用Guitz的答复和更新的内容。
发布于 2015-07-06 08:27:36
从带有二进制文件的链接阶段中删除所有动态库(dylib)。它会自己找到这些库。
https://stackoverflow.com/questions/30815806
复制相似问题