iOS中,导入openssl静态库配置路径,自己创建.pch文件、解决openssl/rsa.h

来源:互联网 发布:it 知乎 编辑:程序博客网 时间:2024/06/05 02:57

 ios开发中,我们难免会用到openssl静态库,libcrypto.a和libel.a这种静态库,所以会出现很多问题,例如#import<openssl.h>这种东西找不到,就很头疼,今天我简单讲解一下!

至于openssl的库编译生成,我这边就不讲了,网上教程很多,同时openssl这种库,支付宝SDK就可以找到,你想自己编译一个也可以,网上下载也可以!今天只讲用法,解决问题!

废话不多说,直接上图,新建个工程!

将两个静态库导入进来!

将所需要的头文件拖进来!

这个时候突然出现nsobject,不见了,没有申明,也就是说这里需要包含<uikit/UIKit.h>和<UIFountion/Fountion.h>文件,这时候创建一个.pch文件把!我是这样做的

在pch文件中添加,我要全局共享的东西!

设置。pch的路径,这点很重要,一定要抓准路径!

这个时候,其他错误没有了,出现了找不到头文件的错误!也就是说openssl库我们没有编译对!

我们需要设置一下,头文件的路径!

注:官方文档说需要 对“Header Search Paths”增加头文件路径:$(SRCROOT)/项目名 称

照着做了还是出现 openssl rsa.h file not found ,后来百度了很多地方都没有找到能解决的方法。

后来突然回想起# include<>跟# include""的区别后,终于找到原因了。

比如 我把openssl这个文件导入到了这个工程目录下 :项目名称/公共类/工具&第三方/支付宝SDK/openssl  ,中间隔了三个文件夹,
那么在Header   Search Paths 的设置就得改为 $(SRCROOT)/项目名 称/公共类/工具&第三方/支付宝SDK,问题就解决了

再反过来看官方的demo,原来他们把openssl这个文件放到了项目根目录下,所以“Header Search Paths”只需要设置$(SRCROOT)/项目名称


成功了,可以使用openssl 的库了,


看完点个赞,点个关注再走,一点不给力

如果我的文档对您有帮助,麻烦关注一下我的公

众微信号,每天学一点,开发更轻松!



0 0