gpt4 book ai didi

python - 如何在 MacOS 上使用 python 构建包含 ssl

转载 作者:太空狗 更新时间:2023-10-30 02:57:33 24 4
gpt4 key购买 nike

在 MacOS 上从源代码构建 python 时,我不小心覆盖了 MacOS 附带的 python,现在它没有 SSL。我尝试通过运行 --with-ssl 选项再次构建

./configure --with-ssl

但是当我随后运行 make 时,它是这样说的

Python build finished, but the necessary bits to build these modules were not found:
_bsddb _ssl dl
imageop linuxaudiodev ossaudiodev
readline spwd sunaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the module's name.

通过查看 setup.py 我并不清楚我应该做什么来找到“必要的位”。如何在 MacOS 上使用 SSL 构建 python?

最佳答案

首先,MacOS 只包含 LibreSSL 2.2.7 库,没有 header ,你真的想使用自制软件安装 OpenSSL:

$ brew install openssl

openssl 公式是一个keg-only 公式,因为 LibreSSL 库正在隐藏 OpenSSL 而 Homebrew 不会干扰它。这意味着您可以在 /usr/local 而不是 /usr/local/opt/openssl 中找到 OpenSSL。但是 Homebrew 包含必要的命令行工具来确定要使用的路径。

然后您需要将这些告诉 configure。如果您正在构建 Python 3.7 或更新版本,请使用 --with-openssl 开关:

./configure --with-openssl=$(brew --prefix openssl)

如果您正在构建旧版本,请设置 CPPFLAGSLDFLAGS 环境变量:

CPPFLAGS="-I$(brew --prefix openssl)/include" \
LDFLAGS="-L$(brew --prefix openssl)/lib" \
./configure

Python 配置基础架构从那里获取它。

知道 现在很古老 Python 版本(2.6 或更早版本,3.0-3.4)只能与 OpenSSL 1.0.x 及更早版本一起使用,不再可以从自制核心安装。

关于python - 如何在 MacOS 上使用 python 构建包含 ssl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36774171/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com