将zip解压缩的库添加到我的iPhone应用程序时遇到问题。
我决定使用SSZipArchive。它使用minizip。
按照说明操作后:
1添加SSZipArchive.h,SSZipArchive.m和minizip
2将libz库添加到目标
我仍然遇到错误:
未找到符号。
我尝试将-lz添加到其他链接器标志并添加lybz.dylib,但它没有帮助。如果您知道如何让libz在这里工作,请告诉我。
已解决:我没有使用文件夹,而是创建了一个黄色参考组,从包含中删除了/ minizip /,现在一切正常。
答案 0 :(得分:1)
unzOpen
,unzOpenCurrentFile
和unzOpenCurrentFilePassword
是minizip库中定义的函数。链接器抱怨它找不到那些函数,这意味着它们没有被正确编译或链接。
确保项目中正确包含minizip/unzip.c
并仔细检查它是否已编译和链接。
答案 1 :(得分:0)
关键是要确保
/ minizip /下的所有 .c 文件都会添加到" 构建阶段> 已编译的来源"
对于想要使用 SSZipArchive 的 Cordova 开发人员,请确保您不要将整个/ minizip /文件夹作为源文件包含在plugin.xml中,< / p>
<source-file src="src/ios/minizip"/>
^^^^^^^^没有!
将它们分别包括在和:
<header-file src="src/ios/minizip/crypt.h" target="crypt.h" />
<source-file src="src/ios/minizip/ioapi.c" target="ioapi.c" />
<header-file src="src/ios/minizip/ioapi.h" target="ioapi.h" />
<source-file src="src/ios/minizip/mztools.c" target="mztools.c" />
<header-file src="src/ios/minizip/mztools.h" target="mztools.h" />
<source-file src="src/ios/minizip/unzip.c" target="unzip.c" />
<header-file src="src/ios/minizip/unzip.h" target="unzip.h" />
<source-file src="src/ios/minizip/zip.c" target="zip.c" />
<header-file src="src/ios/minizip/zip.h" target="zip.h" />