我已经包括在内 libz.1.2.3.dylib
插入代码后
ZipArchive* za = [[ZipArchive alloc] init];
编译时错误
"_OBJC_CLASS_$_ZipArchive", referenced from:
更新
根据http://code.google.com/p/ziparchive/wiki/PageName
我已将ZipArchive文件夹包含到项目中,并且包含框架libz.1.2.3.dylib。
然后我尝试解压缩iphone上的文件,但它有关框架的错误。怎么解决?
Ld build/ePUBreader.build/Debug-iphoneos/ePUBreader.build/Objects-normal/armv7/ePUBreader normal armv7
cd /Users/ragopor/Desktop/ePUBreader
setenv IPHONEOS_DEPLOYMENT_TARGET 4.0
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.1.sdk -L/Users/ragopor/Desktop/ePUBreader/build/Debug-iphoneos -F/Users/ragopor/Desktop/ePUBreader/build/Debug-iphoneos -filelist /Users/ragopor/Desktop/ePUBreader/build/ePUBreader.build/Debug-iphoneos/ePUBreader.build/Objects-normal/armv7/ePUBreader.LinkFileList -dead_strip -miphoneos-version-min=4.0 -framework Foundation -framework UIKit -framework CoreGraphics -framework StoreKit -lz.1.2.3 -o /Users/ragopor/Desktop/ePUBreader/build/ePUBreader.build/Debug-iphoneos/ePUBreader.build/Objects-normal/armv7/ePUBreader
Undefined symbols:
"_OBJC_CLASS_$_ZipArchive", referenced from:
objc-class-ref-to-ZipArchive in ePUBreaderAppDelegate.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
答案 0 :(得分:7)
然后只需拖动&将ZipArchive文件夹放入xCode“Classes”。
然后添加框架libz.1.2.3.dylib。
就是这样。我的代码编译没有任何问题。
答案 1 :(得分:4)
将ZipArchive文件夹拖到项目中时,必须选择“为任何添加的文件夹创建组”而不是“为任何添加的文件夹创建文件夹引用”。如果选择后者,则会从链接器中获得Undefined Symbol错误。
答案 2 :(得分:0)
ZipArchive不在libz.dylib中。 ZipArchive应该来自哪里?它没有被编译或链接到您的应用程序。
答案 3 :(得分:0)
您说您已将ZipArchive文件夹添加到项目中。根据您的描述,似乎在编译项目期间找到了头文件ZipArchive.h,但它没有编译ZipArchive.mm文件,该文件包含ZipArchive类。
文件扩展名.mm对我来说很奇怪。这可能是文件未编译的原因。尝试将其重命名为ZipArchive.m并重试。
答案 4 :(得分:0)
之前我使用过这个库,你需要在Xcode静态库中编译库,然后将它包含在你的项目中,看下面这个链接对你有很大的帮助。