Questo problema mi ha fatto impazzire e non riesco a capire come risolverlo ...
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
Penso che abbia a che fare con:
ld: symbol(s) not found for architecture armv7
Ma ho aggiunto: libz.1.2.3.dylib
e non aiuta, qualcuno ha qualche idea?
nm -g
sul file che sta chiamando il simbolo e quello che dovrebbe avere il simbolo e si dovrebbe vedere se corrispondono o meno, il che può fornire indizi per l'errore. nm -g file.o È possibile controllare i simboli C ++ confusi con questo: 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
altro flag linker e quindi sono visibili Obj-C da librerie statiche esterne che stai usando che non dovrebbero essere visibili (come quelle di Parse). Vedere la mia risposta, se questo è il caso: stackoverflow.com/a/26151208/901641