OpenSSL-Universal 3.3.1000

OpenSSL-Universal 3.3.1000

测试已测试
Lang语言 Obj-CObjective C
许可证 NOASSERTION
发布最新发布Aug 2024

Marcin Krzyżanowski 维护。



  • Mark J. Cox, Ralf S. Engelschall, Dr. Stephen Henson, Ben Laurie, Lutz Jänicke, Nils Larsch, Richard Levitte, Bodo Möller, Ulf Möller, Andy Polyakov, Geoff Thorpe, Holger Reif, Paul C. Sutton, Eric A. Young, Tim Hudson 和 Justin Plouffe

OpenSSL-Universal

OpenSSL 用于 iOS 和 macOS 的 CocoaPods、Carthage 和 Swift Package Manager 的包。iOS 和 macOS 上 OpenSSL 的完整解决方案。该包附带预编译库,并在必要时包含脚本以构建更新的版本。

当前版本包含使用最新 iOS SDK (目标 7.0) 和最新 macOS SDK (目标 10.10) 构建的二进制文件,适用于所有支持的架构(包括 macOS Catalyst)。

支持

为了您的便捷,维护这些内容需要一些时间,所以也许您可以赞助 1 美元,这样我就可以继续工作。每天有超过8000个克隆。如果每个月每家使用我在这里的工作的公司都赞助我 1 美元,那么我们就持平了。赶快,找到 赞助 按钮,履行您的职责。

架构

  • iOS 支持以下架构:armv7, armv7s, arm64 + 模拟器 (x86_64, arm64)
  • macOS 支持以下架构:x86_64, arm64

输出格式

为什么?

苹果表示:“尽管OpenSSL在开源社区中得到广泛应用,但OpenSSL并没有提供从版本到版本的稳定API。因此,尽管OS X提供了OpenSSL库,但OS X中的OpenSSL库已不再推荐使用,并且OpenSSL从未作为iOS的一部分提供。”

安装

构建

您不必使用我提供的预构建的二进制文件。您可以在您信任的机器上本地构建。

$ git clone https://github.com/krzyzanowskim/OpenSSL.git
$ cd OpenSSL
$ make

构建过程的结果放在框架目录下。

加固运行时(macOS)和Xcode

用于Swift Package Manager包集成的二进制文件OpenSSL.xcframework,如果您使用的应用使用了带有启用加固运行时的本地运行签名证书,则无法正确加载。为了解决这个问题,您有两个选择

  • 使用合适的签名证书,例如开发<- 这是正确的行为
  • 使用禁用库验证com.apple.security.cs.disable-library-validation权限

Swift 包管理器

dependencies: [
    .package(url: "https://github.com/krzyzanowskim/OpenSSL.git", .upToNextMinor(from: "1.1.180"))
]

CocoaPods

pod 'OpenSSL-Universal'

Carthage

github "krzyzanowskim/OpenSSL"

作者

马辛·克日 skipping...

常见问题等。

在哪里可以使用 OpenSSL-Universal?

这些库适用于 iOS 和 macOS。有两组 OpenSSL 静态库;libcrypto.alibssl.a。 不要期望这些 OpenSSL 文件能在全世界所有 CPU 架构上工作。这是您自己的责任去检查。问问自己,您是否正在为旧设备编写应用程序?只为新设备?所有 iOS 设备?仅为 macOS?等等:

胖二进制

OpenSSL-Universal框架是一个胖二进制文件。这意味着它在一个文件中支持多种CPU架构。为了理解这一点,请回到终端。转到您的OpenSSL-Universal macOS文件,并运行命令file libcrypto.a。这将告诉您文件编译所针对的架构x86_64。如果您尝试了iOS OpenSSL-Universal文件,它将显示armv7armv7sarm64 + 模拟器(x86_64)。

Xcode 设置

确保Xcode知道;

  1. OpenSSL静态库的位置。
  2. OpenSSL头文件的位置,用于C语言包的包含语句。在您的workspace中,转到目标(不是项目)。目标是在成功构建后产生的C应用。选择构建阶段链接二进制与库。选择+,导航到框架中包含的静态OpenSSL库。神奇的结果是,您的目标构建设置中的库搜索路径已自动填充,您无需输入任何内容。现在转到目标。在构建设置中,将始终搜索用户路径设置为。然后添加一个新的条目到用户头文件搜索路径。这应该是OpenSSLUniversal中包含的OpenSSL头文件位置。