美文网首页iOS开发点滴
解决iOS集成支付宝 ‘openssl/asn1.h’ file

解决iOS集成支付宝 ‘openssl/asn1.h’ file

作者: 小蜜蜂Bee | 来源:发表于2020-05-21 14:42 被阅读0次

    今天来说说集成支付宝SDK报‘openssl/asn1.h’ file not found错误的解决办法,因为项目中明明有这个文件,但就是报错,报错如下图:


    报错示图

    那么解决方法如下:

    1、找到Xcode的Build Settings,搜索Header Search Paths,双击点开;

    2、点击“+”号;

    3、找到asn1.h文件路径,比如:

    $(PROJECT_DIR)/XiaoMiFeng/Third(第三方)/PaySDK/PayLibrary/支付宝支付/AliPay
    
    (备注:这里其实只是找了openssl文件夹所在的路径,$(PROJECT_DIR)一定要,XiaoMiFeng是项目名称文件夹);
    

    4、完成。

    如图:

    解决路径

    然后正常运行就可以解决了!

    最后说一下$(SRCROOT)与$(PROJECT_DIR),当时在实践中使用$(SRCROOT)没成功,改用后者成功。那么引用一篇关于这个的文章,有兴趣的朋友可以点击查看。
    

    https://www.cnblogs.com/somebodywx/p/5852028.html

    Xcode Build Search Paths设置

    include < > 引用编译器的类库路径下的头文件

    include " " 引用工程目录的相对路径的头文件

    include 是编译指令,在编译时,编译器会将相对路径替换成绝对路径,因此,头文件绝对路径=搜索路径+相对路径。

    Xcode Build Settings 下 Search Paths设置搜索路径

    Header Search Paths:头文件搜索路径设置

     $(SRCROOT)宏和$(PROJECT_DIR)宏都指xxx.xcodeproj所在的父目录
    

    例如:引用工程testDemo/scr/test.h 头文件,

    Header Search Paths中添加$(SRCROOT),引用为include “scr/test.h"

    如果在Header Search Paths中添加$(SRCROOT)/scr,那么头文件引用直接引用 include “test.h

    如果以上的方法帮助到你了,欢迎分享,更欢迎赞赏,也可以直接打开支付宝、微信、QQ的扫一扫功能直接扫下面的支付宝、微信、QQ三合一打赏码进行打赏支持作者创作,感谢感谢!

    赞赏码

    欢迎和我交流,QQ:834537795(小蜜蜂)

    相关文章

      网友评论

        本文标题:解决iOS集成支付宝 ‘openssl/asn1.h’ file

        本文链接:https://www.haomeiwen.com/subject/yabzohtx.html