Pol*_*ina 5 xcode libz ios cocos2d-x
在我的项目中,我有几个链接错误,每个都指向缺少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)
Run Code Online (Sandbox Code Playgroud)
所以看起来像外部库(cocos2d和GA)找不到这个库.我在Link二进制文件中为我的目标提供了库,-lz在其他Linger标志中也有标志.删除任何这些都会保留此错误.
什么可能导致这个问题?如何解决这个问题?
(我已经尝试过重启XCode,清理派生数据等等)
小智 2
当前版本的 XCode 有点奇怪。您需要清除项目中之前尝试的所有 zlib / libz 引用,然后在 Finder 中打开 /usr/lib 并手动将 libz.dylib 与源文件一起拖到项目中。这就是五分钟前对我有用的方法。
我不知道发生了什么事。我有一个使用 zlib 的原型项目,可以正确编译,但是当我复制并粘贴邮政编码并将支持文件复制到我的真实项目时,我无法编译,并出现相同的 zlib 缺失错误。原型项目继续编译。项目之间的设置没有区别!在我的真实项目中,我尝试添加 libz.dylib 并且它是非链接版本(libz.1.dylib),我尝试手动将 -lz 添加到链接器构建选项中,但均无济于事。耶,发现者!我希望这对你也有用。
| 归档时间: |
|
| 查看次数: |
639 次 |
| 最近记录: |