xcode 7 - 在xcode 7中找不到"openssl/pkcs7.h"文件

Piy*_*hur 7 macos cocoa objective-c xcode7

我正在使用以下头文件的Mac应用程序

#include <openssl/pkcs7.h>
#include <openssl/objects.h>
#include <openssl/sha.h>
#include <openssl/x509.h>
#include <openssl/err.h>
Run Code Online (Sandbox Code Playgroud)

我最近将OSX Yosemite更新为OSX El Capitan和Xcode 6.4至7.0

该项目在更新前已成功运行.现在这些文件不可用.

我需要做些什么才能让它再次运作?

其中一个解决方案是iOS使用可可豆荚.

没有使用可可豆荚还有其他方法吗?

dan*_*elv 3

Apple 不久前弃用了 openssl,它不再是 SDK 的一部分,而且从 10.11 开始,该库本身也不再随 OS X 一起提供。

参考这里

你没有提到你用 openssl 做什么。解决方案取决于您的需求。如果您必须使用 openssl(例如,太多代码依赖于它),那么您需要自己获取 openssl,使用下载的标头进行编译,并将该库包含在您的应用程序发行版中。如果您不想手动执行此操作,Cocoapods 似乎是管理此操作的合理方法。

或者修改您的代码以使用 OS X 附带的其他库,例如Security TransformsCommonCrypto

更新: 似乎苹果的文档有点误导(惊讶!)。旧版本 openssl (0.9.8) 的动态库仍随 10.11 一起分发。刚刚检查了 10.11 的全新安装,libcrypto 和 libssl 仍然存在。

如果这就足够了(例如,您只使用 openssl 进行 App Store 收据验证),您可以只从 10.10 SDK 获取头文件(使用 xcode 6.4 从 Apple 下载)并仅使用头文件编译您的应用程序。您不需要实际的 openssl 二进制文件。