2015-08-20 4 views
5

В моем проекте у меня есть несколько ошибок связывания, каждый из которых указывает на отсутствие лиза. Вот пример:Libz не связан в XCode

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) 

Так выглядит как внешние LIBS (cocos2d & GA) не может найти эту библиотеку. У меня есть в бинарнике Link с библиотеками для моей цели, также есть флаг -lz в других флагах Linger. Удаление любых из этих ошибок.

Что может вызвать эту проблему? Как это можно решить?

(я уже пытался что-то вроде перезагрузки XCode, очистки полученных данных и т.д.)

ответ

2

Там что-то шаткое с текущей версией XCode. Вам нужно очистить все ссылки zlib/libz от ваших предыдущих попыток в вашем проекте, затем открыть/usr/lib в Finder и вручную перетащить libz.dylib в свой проект вместе с вашими исходными файлами. Это то, что только что сработало для меня пять минут назад.

Я не знаю, что случилось. У меня есть прототип проекта с использованием zlib, который компилируется правильно, но когда я скопировал &, вставил почтовый индекс &, скопировал файлы поддержки в мой реальный проект, я не смог скомпилировать с теми же ошибками zlib-missing. Проект прототипа продолжает компиляцию. Никакой разницы в настройке между проектами! В моем реальном проекте я попробовал добавить libz.dylib, и это не связанная версия (libz.1.dylib), я попробовал вручную добавить -lz к компоновке компоновщика компоновки, причем безрезультатно. Yay Finder! Надеюсь, это сработает и для вас.

+0

Отлично, спасибо! – Polina

Смежные вопросы