首页 > 解决方案 > macOS 上的 OpenSSL 1.0.2m

问题描述

为了构建一个特定的库,我需要带有开发包的 openssl 库版本 1.0.2m。我正在使用 macOS。使用brew install openssl安装最新版本 1.1.1d。

标签: macosopensslhomebrew

解决方案


由于 OpenSSL 1.0.2 将在 2019 年底结束生命周期,因此不再通过 Homebrew 提供。Homebrew 2.2.0 公告中提到了这一点。

从源代码自己构建和安装 OpenSSL 1.0.2 相当简单。您可以从Old 1.0.2 Releases页面下载所需的版本,并按照INSTALL中的说明进行操作。


也可以恢复旧公式并从中安装,但我不能保证效果如何。以下步骤确实完成了安装过程:

$ git clone https://github.com/Homebrew/homebrew-core.git
$ cd homebrew-core
$ git checkout 75b57384 Formula/openssl.rb
$ brew install Formula/openssl.rb

对我来说,这表明:

Warning: openssl 1.1.1d is available and more recent than version 1.0.2m.
==> Downloading https://homebrew.bintray.com/bottles/openssl-1.0.2m.high_sierra.bottle.tar.gz

之后愉快地继续前进。最后的快速尝试让人相信它运行良好:

$ /usr/local/opt/openssl/bin/openssl version
OpenSSL 1.0.2m  2 Nov 2017

如果您不想git直接使用,也可以尝试下载该版本的openssl.rbfromgitHub.combrew install在其上运行。


如果你想知道那个提交哈希是从哪里来的,我碰巧知道这个公式曾经被称为 -- 惊喜 -- openssl.rb(但git用来查询已删除的文件也可以)。因此,我检查了历史Formula/openssl.rb并发现:

$ git log -- Formula/openssl.rb
...
commit 75b573845a17aaf3f7c84dc58e97cf5fe39a502b
Author: BrewTestBot <brew-test-bot@googlegroups.com>
Date:   Thu Nov 2 17:20:33 2017 +0000

    openssl: update 1.0.2m bottle.

推荐阅读