在我的项目中,我有几个链接错误,每个链接错误都指向libz丢失。下面是一个例子:
Undefined symbols for architecture arm64:
"_inflateReset2", referenced from:
_png_inflate_claim in libcocos2d iOS.a(pngrutil.o)
"_inflateEnd", referenced from:
cocos2d::unzCloseCurrentFile(void*) in libcocos2d iOS.a(unzip.o)
cocos2d::ZipUtils::inflateMemoryWithHint(unsigned char*, long, unsigned char**, long*, long) in libcocos2d iOS.a(ZipUtils.o)
_png_destroy_read_struct in libcocos2d iOS.a(pngread.o)
+[GAICompressionUtil gai_dataByInflatingBytes:length:isRawData:] in libGoogleAnalyticsServices.a(GAICompressionUtil.o)
_FT_Stream_OpenGzip in libcocos2d iOS.a(ftgzip.o)
_ft_gzip_stream_close in libcocos2d iOS.a(ftgzip.o)
_FT_Gzip_Uncompress in libcocos2d iOS.a(ftgzip.o)
...
"_deflate", referenced from:
+[GAICompressionUtil gai_dataByCompressingBytes:length:compressionLevel:mode:] in libGoogleAnalyticsServices.a(GAICompressionUtil.o)
"_deflateInit2_", referenced from:
+[GAICompressionUtil gai_dataByCompressingBytes:length:compressionLevel:mode:] in libGoogleAnalyticsServices.a(GAICompressionUtil.o)
"_inflateReset", referenced from:
_png_decompress_chunk in libcocos2d iOS.a(pngrutil.o)
_FT_Stream_OpenGzip in libcocos2d iOS.a(ftgzip.o)
_ft_gzip_file_io in libcocos2d iOS.a(ftgzip.o)所以看起来外部库(cocos2d & GA)找不到这个库。我在链接二进制中有我的目标库,在其他留守标记中也有-lz标志。删除其中的任何一个都会保留此错误。
是什么导致了这个问题?如何解决这一问题?
(我已经尝试过重新启动XCode、清理派生数据等)
发布于 2015-08-24 00:56:35
XCode的当前版本有些不稳定。您需要清除项目中先前尝试的所有zlib / libz引用,然后在Finder中打开/usr/lib,并将libz.dylib与源文件一起手动拖动到项目中。这就是五分钟前对我起作用的。
我不知道怎么回事。我有一个使用zlib的原型项目,它可以正确编译,但是当我复制并粘贴邮政编码并将支持文件复制到我的实际项目时,我无法编译,并存在相同的zlib缺失错误。原型项目继续编译。项目之间的设置没有差别!在我的实际项目中,我尝试添加libz.dylib并且它是非链接版本(libz.1.dylib),我尝试手动将-lz添加到链接器构建选项中,这两种方法都没有效果。耶·芬德!我希望这对你也有用。
https://stackoverflow.com/questions/32112963
复制相似问题