[英]Libz not getting linked in XCode
在我的項目中,我有幾個鏈接錯誤,每個都指向缺少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)找不到這個庫。 我在鏈接二進制文件中為我的目標提供了庫,在其他Linger標志中也有-lz
標志。 刪除任何這些都會保留此錯誤。
什么可能導致這個問題? 如何解決這個問題?
(我已經嘗試過重啟XCode,清理派生數據等等)
當前版本的XCode有些不足之處。 您需要清除項目中先前嘗試的所有zlib / libz引用,然后在Finder中打開/ usr / lib並手動將libz.dylib拖到您的項目旁邊。 這就是五分鍾前我的工作。
我不知道發生了什么事。 我有一個使用zlib的原型項目正確編譯,但是當我復制並粘貼了郵政編碼並將支持文件復制到我的真實項目時,我無法編譯,同樣的zlib-missing錯誤。 原型項目繼續編譯。 項目之間的設置沒有區別! 在我的真實項目中,我嘗試添加libz.dylib並且它是非鏈接版本(libz.1.dylib),我嘗試手動將-lz添加到鏈接器構建選項,兩者都無濟於事。 Yay Finder! 我希望這也適合你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.