ปัญหานี้ทำให้ฉันคลั่งและฉันไม่สามารถหาวิธีแก้ไขได้ ...
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's) ดูคำตอบของฉันหากเป็นกรณีนี้: stackoverflow.com/a/26151208/901641