Clang: символы не найдены. cocos2d mac - PullRequest
7 голосов
/ 07 января 2012

Когда я компилирую мой проект cocos2d mac, я получаю эту ошибку:

Undefined symbols for architecture x86_64:
"_inflateInit2_", referenced from:
  _ccInflateMemoryWithHint in ZipUtils.o
"_inflate", referenced from:
  _ccInflateMemoryWithHint in ZipUtils.o
"_inflateEnd", referenced from:
  _ccInflateMemoryWithHint in ZipUtils.o
"_gzopen", referenced from:
  _ccInflateGZipFile in ZipUtils.o
"_gzread", referenced from:
  _ccInflateGZipFile in ZipUtils.o
"_gzclose", referenced from:
  _ccInflateGZipFile in ZipUtils.o
"_uncompress", referenced from:
  _ccInflateCCZFile in ZipUtils.o

ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Ответы [ 2 ]

39 голосов
/ 07 января 2012

Вам нужно добавить библиотеку libz.dylib к вашей цели.

Начиная с Xcode 4.6, это очень просто.Сводный экран назначения позволяет добавлять и удалять фреймворки и библиотеки.Вот демонстрация:

adding a library to a target in Xcode 4.6 and later

22 голосов
/ 08 января 2012

Откройте настройки сборки вашей цели. Найдите параметр Другие флаги компоновщика . Добавьте к нему флаг -lz .

Вам не нужно добавлять libz.dylib в качестве фреймворка, как предлагает Роб, хотя это тоже работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...