Эта проблема сводит меня с ума, и я не могу решить, как ее исправить ...
Undefined symbols for architecture armv7:
"_deflateEnd", referenced from:
-[ASIDataCompressor closeStream] in ASIDataCompressor.o
"_OBJC_CLASS_$_ASIDataDecompressor", referenced from:
objc-class-ref in ASIHTTPRequest.o
"_deflate", referenced from:
-[ASIDataCompressor compressBytes:length:error:shouldFinish:] in ASIDataCompressor.o
"_deflateInit2_", referenced from:
-[ASIDataCompressor setupStream] in ASIDataCompressor.o
ld: symbol(s) not found for architecture armv7
collect2: ld returned 1 exit status
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 failed with exit code 1
Я думаю, что это связано с:
ld: symbol(s) not found for architecture armv7
Но я добавил: libz.1.2.3.dylib
а это не помогает, у кого-нибудь есть идеи?
nm -g
файл, который вызывает символ, и тот, который должен иметь символ, и вы должны увидеть, совпадают ли они или нет, что может дать подсказки для ошибки. nm -g file.o Вы можете проверить символы C ++, разбитые на это: nm -gC file.o
Undefined symbols for architecture armv7: "YGConfig::YGConfig(int (*)(YGConfig*, YGNode*, YGLogLevel, char const*, void*))", referenced from: _YGConfigNew in libyoga.a(Yoga.o) ld: symbol(s) not found for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation)
-ObjC
другой флаг компоновщика, и поэтому Obj-C из используемых вами внешних статических библиотек, которые не должны быть видны (например, из Parse), видны. Смотрите мой ответ, если это так: stackoverflow.com/a/26151208/901641