Undefined symbols for architecture i386: "_crc32", referenced from:——crc链接错误

  有时候用别人的框架,你会碰到下面的错误,很是吓人,什么玩意,我怎么看不懂!!!

Undefined symbols for architecture i386:
  "_RELEASE", referenced from:
      -[DemoAnnotationView dealloc] in DemoAnnotationView.o
  "_crc32", referenced from:
      -[ZipArchive addFileToZip:newname:] in ZipArchive.o
      _unzReadCurrentFile in unzip.o
      _zipWriteInFileInZip in zip.o
  "_deflate", referenced from:
      _zipWriteInFileInZip in zip.o
      _zipCloseFileInZipRaw in zip.o
  "_deflateEnd", referenced from:
      _zipCloseFileInZipRaw in zip.o
  "_deflateInit2_", referenced from:
      _zipOpenNewFileInZip3 in zip.o
  "_get_crc_table", referenced from:
      _unzOpenCurrentFile3 in unzip.o
      _zipOpenNewFileInZip3 in zip.o
  "_iconv", referenced from:
      _qr_code_data_list_extract_text in libzbar.a(qrdectxt.o)
  "_iconv_close", referenced from:
      _qr_code_data_list_extract_text in libzbar.a(qrdectxt.o)
  "_iconv_open", referenced from:
      _qr_code_data_list_extract_text in libzbar.a(qrdectxt.o)
  "_inflate", referenced from:
      _unzReadCurrentFile in unzip.o
  "_inflateEnd", referenced from:
      _unzCloseCurrentFile in unzip.o
  "_inflateInit2_", referenced from:
      _unzOpenCurrentFile3 in unzip.o
  ......

  IOS编译时有时出现这样的错误,要注意,错误不在Undefined for architecture i386,而是下面下划线开头的变量没定义,此时需要导入libz到项目即可。

  Build Phases ——> Link Binary With Libraries 中导入libz.1.2.5.dylib即可。

  提醒:下次如果再碰到crc链接错误,请把libz.dylib加入到项目中去。

原文地址:https://www.cnblogs.com/yyt-hehe-yyt/p/4721515.html