接入支付宝SDK 发生错误:'openssl/asn1.h' f
2020-04-23 本文已影响0人
_亻弋_石马_亻_生
前言:
之前接入支付宝SDK,在Rsa加密的功能上出现了找不到文件/无效文件路径的问题!懊恼了我好久,等我冷静下来,其实想想挺简单的系统文件引用路径不就是在Header Search Paths嘛。
遇事不要慌,先冷静下来分析分析
+ 错误 1. 文件路径错误,多了或者少了文件名
+ 错误 2.看官方的demo中吧openssl这个文件放到了项目根目录下,所以"Header Search Paths"只需要设置为:" (SRCROOT)/ 项目名称 ",
也有一些资料说使用 $(PROJECT_DIR)代替$(SRCROOT),发现二者都可以。
注意:Header Search Paths中设置路径只需要设置到openssl的父文件夹就可以了,并且要用""括起来.
>$(PROJECT_DIR)和$(SRCROOT)区别:
有人说:
$(SRCROOT)代表的是项目根目录下
$(PROJECT_DIR)代表的是整个项目
也有人说:
$(SRCROOT)宏和$(PROJECT_DIR)宏都指xxx.xcodeproj所在的父目录
以下是解决思路
1、拼接路径:你的工程名/一级文件夹的名称/二级文件夹/……,一直拼接到你放置支付宝文件的文件。
2、$(PROJECT_DIR)/加上你拼接的路径。类似这样($(PROJECT_DIR)/工程名/一级文件夹/二级文件夹/支付宝文件夹)
3、找到Xcode的Build Settings,搜索Header Search Paths,双击点开。
4、点击“+”号。
5、将第二步的整个路径添加。
6、完成
最后上图,一看下图就明白了
