【问题标题】:Annoying Xcode Error "file not found" #import <openssl/pkcs7.h>恼人的 Xcode 错误“找不到文件”#import <openssl/pkcs7.h>
【发布时间】:2014-11-24 17:31:06
【问题描述】:

我做了我知道的一切。

我正在尝试在我的项目中使用 OpenSSL,但出现此错误

找不到文件

 #import <openssl/pkcs7.h>

我现在正在使用这个 cocoapod:

pod 'OpenSSL-Classic', '1.0.1.i'

我不得不手动设置我的头文件和库搜索路径,因为这个 cocoapod 没有做功课。我从网络上的一个页面复制了这个,我不知道他们是否指向正确的路径。

图书馆搜索路径

$(inherited)

标题搜索路径

"${PODS_ROOT}/Headers/OpenSSL-Classic/openssl"
"${PODS_ROOT}/Headers/OpenSSL-Classic"

其他 C 标志

-isystem
"${PODS_ROOT}/Headers/Public/OpenSSL-Classic"
-isystem
"${PODS_ROOT}/Headers/Public/OpenSSL-Classic/openssl"

这四行看起来很奇怪。

我如何知道标题的确切位置,以便解决错误并正确填写这些字段?

【问题讨论】:

    标签: ios xcode openssl


    【解决方案1】:

    抱歉,我忘记将 iOS 标头添加到版本 1.0.1.i 的 git 存储库中。我在 Mac 项目中使用了这个 cocoapod,所以我没有注意到。

    您可能已经解决了这个问题,但如果其他人遇到问题,只需升级到版本 1.0.1.j,iOS 标头就会在那里。示例 Podfile:

    source 'https://github.com/CocoaPods/Specs.git'
    
    pod 'OpenSSL-Classic', '1.0.1.j'
    

    至于为什么标题和库搜索路径没有自动添加到您的项目中,我不确定。您是否记得打开 .xcworkspace 而不是 .xcodeproj?你会错过 $(inherited) 吗?您的项目中是否有多个目标?如果是这样,您需要在 Podfile 中添加类似以下内容:

    link_with 'Tunesify', 'Tunesify Lite', 'Tunesify Tests'
    

    将它们替换为项目目标的名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-28
      • 1970-01-01
      • 2011-05-22
      • 2011-09-02
      • 2018-06-03
      • 1970-01-01
      相关资源
      最近更新 更多