You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac M1芯片Python环境安装M2Crypto报错无法完成安装

问题根因

编译M2Crypto时抛出的Unable to find 'openssl/xxx.h'错误,核心原因有三点:

  • 新版macOS不再默认提供/usr/include路径下的系统开发头文件,M2Crypto安装脚本默认的OpenSSL头文件搜索路径无效
  • M1芯片Mac上Homebrew的默认安装路径为/opt/homebrew,和旧款Intel Mac的/usr/local路径不一致,安装脚本未适配arm64架构下的Homebrew依赖查找逻辑
  • M2Crypto 0.38.0版本不兼容OpenSSL 3.0+接口,macOS系统内置的LibreSSL也缺少对应编译所需的完整头文件
解决步骤
  • 先安装编译所需的依赖,执行命令:
brew install openssl@1.1 swig

注意:必须安装openssl@1.1版本,安装更高版本的openssl@3会触发接口不兼容的编译错误

  • 临时指定OpenSSL的头文件、动态库路径,直接执行安装命令即可:
env LDFLAGS="-L/opt/homebrew/opt/openssl@1.1/lib" \
CPPFLAGS="-I/opt/homebrew/opt/openssl@1.1/include" \
pip install m2crypto==0.38.0
  • 如果执行上述命令后仍然报错,先将OpenSSL相关环境变量写入当前终端会话,再重新安装全量依赖:
export PATH="/opt/homebrew/opt/openssl@1.1/bin:$PATH"
export LDFLAGS="-L/opt/homebrew/opt/openssl@1.1/lib"
export CPPFLAGS="-I/opt/homebrew/opt/openssl@1.1/include"
export PKG_CONFIG_PATH="/opt/homebrew/opt/openssl@1.1/lib/pkgconfig"
pip install -r requirements.txt
补充说明
  • 如果你通过Rosetta 2转译运行x86架构的Python环境,将上述命令中所有/opt/homebrew路径替换为/usr/local即可,这是Intel架构下Homebrew的默认安装路径。
  • 不要尝试手动创建/usr/include目录、拷贝头文件或关闭系统SIP权限修改系统目录文件,会破坏系统安全结构,后续系统更新后也会失效。
  • Python 2.7已停止官方维护多年,若项目条件允许,优先升级到Python 3.x环境,新版M2Crypto对Python3、arm64架构Mac的适配更完善,不会出现这类路径适配问题。

内容的提问来源于stack exchange,提问作者ahcyT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 10:27:16