iOS9 AlipaySDK 编译错误
1.
问题:ld: warning: directory not found for option ‘-L/Users/XXX/Downloads/ios’
ld: ‘/XXX/Common/ALiPay/AlipaySDK.framework/AlipaySDK’ does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
原因:
由于支付宝AlipaySDK的二进制库不支持bitcode.而Xcode默认是要支持bitcode的,而且如果支持的话,其中所有的二进制库和framework都必须包含bitcode。
解决办法:
在build setting 中搜索bitcode,并设置Enable Bitcode为NO即可。
2.
问题:支付宝找不到头文件openssl/rsa.h
原因:Header Search Paths 设置有问题
解决办法:
在你的Xcode里的header search paths 里添加支付宝SDK(openssl的路径);格式如下 $(PROJECT_DIR)/文件夹名(直接点击openssl,然后Show In Finder,然后command + i 查看路径,把得到路径的工程名字以后的部分加在文件夹名这OK了)
3.
问题:"_EVP_DecodeBlock", referenced from:_dataFromBase64String in openssl_wrapper.o
解决办法:
仔细看一下支付宝的Demo,终于找到了两个.a文件,libcrypto.a和libssl.a
拖到根目录下就好