按照网上的教程来配置ASIHTTPRequest库结果就出现了错误:
3)使用说明及示例代码
http://allseeing-i.com/ASIHTTPRequest/How-to-use
4)编译错误处理
如果遇到编译错误类似:Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_ASIHTTPRequest",先检查上述的依赖代码是否已加入编译列表,如未加入,依次点击Target->Build Phases->Compile Sources,点击底部“+”添加上述代码。
如果遇到编译错误类似:Undefined symbols for architecture armv7: "_inflateEnd", referenced from,则应该是缺少依赖libz.dylib,添加方法:依次点击Target->Build Phases->Compile Sources,点击底部“+”,在弹出的列表中输入libz,添加搜索结果中最新版本即可。
Undefined symbols for architecture arm64:
“OBJC_CLASS_$_ASIHTTPRequest”,reference from:
objc-class-ref in VIewController.o
ld:symbol(s) not found for architecture arm64
clang:error:linker command failed with exit code 1(use -v to see invocation)
解决的过程:
已经完成的步骤:二进制库文件包含。
1.重新向工程添加库文件,需要建立引用(选择Create groups,之前就是错选了create folder reference,其实教程里已经写了,自己没看清楚)
2.在BuildPhases中将CompileSources中,给包含了进去的库文件的Compiler Flags添加-fno-objc-arc
3.在Header Search Paths中添加:"${SDK_DIR}"/usr/include/libxml2
这个解决随后的:
'libxml/HTMLparser.h' file not found错误。
====================================
网上的参考资料:
ASIHTTPRequest配置:
ASIHTTPRequest
1.下载最新版本
官网:http://allseeing-i.com/ASIHTTPRequest/ (未验证)
最新版本下载:http://allseeing-i.com/ASIHTTPRequest/ (未验证)
2.安装及使用
官网说明:http://allseeing-i.com/ASIHTTPRequest/Setup-instructions (未验证)
1)在项目中创建新的Group,添加说明中所需的代码,根据项目类型是iphone还是Mac添加附加文件。
如果不能确定所需要的文件,那么将以下列表中的文件全部添加到项目中
ASIHTTPRequestConfig.h
ASIHTTPRequestDelegate.h
ASIProgressDelegate.h
ASICacheDelegate.h
ASIHTTPRequest.h
ASIHTTPRequest.m
ASIDataCompressor.h
ASIDataCompressor.m
ASIDataDecompressor.h
ASIDataDecompressor.m
ASIFormDataRequest.h
ASIInputStream.h
ASIInputStream.m
ASIFormDataRequest.m
ASINetworkQueue.h
ASINetworkQueue.m
ASIDownloadCache.h
ASIDownloadCache.m
iPhone 项目还必须包括:
ASIAuthenticationDialog.h
ASIAuthenticationDialog.m
Reachability.h (in the External/Reachability folder)
Reachability.m (in the External/Reachability folder)
xh注: 还需要添加-fno-objc-arc标志。如果不使用Create groups方式来添加文件的话,buildphases中的CompileSources中就不会出现这些文件。这个很重要。
2)添加ASIHTTPRequest中依赖的Frameworks
CFNetwork, SystemConfiguration, MobileCoreServices, CoreGraphics and QuartzCore
1.下载最新版本
官网:http://allseeing-i.com/ASIHTTPRequest/ (未验证)
最新版本下载:http://allseeing-i.com/ASIHTTPRequest/ (未验证)
2.安装及使用
官网说明:http://allseeing-i.com/ASIHTTPRequest/Setup-instructions (未验证)
1)在项目中创建新的Group,添加说明中所需的代码,根据项目类型是iphone还是Mac添加附加文件。
如果不能确定所需要的文件,那么将以下列表中的文件全部添加到项目中
ASIHTTPRequestConfig.h
ASIHTTPRequestDelegate.h
ASIProgressDelegate.h
ASICacheDelegate.h
ASIHTTPRequest.h
ASIHTTPRequest.m
ASIDataCompressor.h
ASIDataCompressor.m
ASIDataDecompressor.h
ASIDataDecompressor.m
ASIFormDataRequest.h
ASIInputStream.h
ASIInputStream.m
ASIFormDataRequest.m
ASINetworkQueue.h
ASINetworkQueue.m
ASIDownloadCache.h
ASIDownloadCache.m
iPhone 项目还必须包括:
ASIAuthenticationDialog.h
ASIAuthenticationDialog.m
Reachability.h (in the External/Reachability folder)
Reachability.m (in the External/Reachability folder)
xh注: 还需要添加-fno-objc-arc标志。如果不使用Create groups方式来添加文件的话,buildphases中的CompileSources中就不会出现这些文件。这个很重要。
2)添加ASIHTTPRequest中依赖的Frameworks
CFNetwork, SystemConfiguration, MobileCoreServices, CoreGraphics and QuartzCore
xh注:还需要添加libxml2.tbd,libz.x.x.x.tbd。ios7之后,dylib后缀就变成了tbd了。
3)使用说明及示例代码
http://allseeing-i.com/ASIHTTPRequest/How-to-use
4)编译错误处理
如果遇到编译错误类似:Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_ASIHTTPRequest",先检查上述的依赖代码是否已加入编译列表,如未加入,依次点击Target->Build Phases->Compile Sources,点击底部“+”添加上述代码。
如果遇到编译错误类似:Undefined symbols for architecture armv7: "_inflateEnd", referenced from,则应该是缺少依赖libz.dylib,添加方法:依次点击Target->Build Phases->Compile Sources,点击底部“+”,在弹出的列表中输入libz,添加搜索结果中最新版本即可。