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

M1 Mac下使用Python Web3构建区块链交易遇Crypto架构兼容错误

解决M1 MacBook Pro上Web3.py与pycryptodome架构不兼容问题

核心原因

M1芯片采用arm64e架构,若你的Python环境是通过Rosetta转译的x86_64版本,安装pycryptodome时会编译生成x86_64架构的原生模块,导致和arm64e环境冲突,出现无法加载Crypto.Cipher模块的报错。

解决方案

1. 检查当前Python架构

先确认你的Python是x86_64还是arm64版本:

python3 -c "import platform; print(platform.machine())"

如果输出为x86_64,说明使用的是Rosetta转译的Python,需要切换到原生arm64版本。

2. 安装原生arm64架构的Python

  • 从Python官方渠道下载适配arm64的Universal 2架构安装包,完成安装
  • 或通过Homebrew安装:
brew install python

安装后再次运行架构检查命令,确认输出为arm64。

3. 重装pycryptodome

先卸载现有版本:

pip uninstall -y pycryptodome

然后用原生arm64的pip重新安装:

pip install pycryptodome --no-cache-dir --force-reinstall

4. 验证修复效果

运行以下代码测试Crypto模块是否正常加载:

from Crypto.Cipher import AES
print("AES模块加载成功")

无报错后,再测试Web3.py的区块链交易功能。

5. 额外排查点

  • 确保Ganache使用的是原生arm64版本,避免Rosetta转译引发的架构不匹配
  • 若使用虚拟环境,需基于新的arm64 Python创建虚拟环境,再重新安装所有项目依赖

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 13:50:17