Macbook M1 python3 报错 (have ‘arm64’, need ‘x86_64’)问题

Macbook M1 python3 报错 (have ‘arm64’, need ‘x86_64’)问题

在 mac M系列机上写个Python 程序,这个问题很常见 XXXXX (have ‘arm64’, need ‘x86_64’),主要是因为芯片架构不同问题。

或者:

ImportError: dlopen(/Users/yuccn/Library/Python/3.10/lib/python/site-packages/psutil/_psutil_osx.abi3.so, 0x0002): tried: '/Users/yuccn/Library/Python/3.10/lib/python/site-packages/psutil/_psutil_osx.abi3.so' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/yuccn/Library/Python/3.10/lib/python/site-packages/psutil/_psutil_osx.abi3.so' (no such file), '/Users/yuccn/Library/Python/3.10/lib/python/site-packages/psutil/_psutil_osx.abi3.so' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64'))

查看当前架构:

# uname -a
Darwin MacBook-Pro.local 22.1.0 Darwin Kernel Version 22.1.0: Sun Oct  9 20:15:52 PDT 2022; root:xnu-8792.41.9~2/RELEASE_ARM64_T8112 arm64

可以看到后面是:arm64。
或者通过命令:arch 也可以查看到arm64。

切换架构 arch -x86_64 zsh

# arch -x86_64 zsh
Restored session: 2024411日 星期四 172159秒 CST
# uname -a
Darwin MacBook-Pro.local 22.1.0 Darwin Kernel Version 22.1.0: Sun Oct  9 20:15:52 PDT 2022; root:xnu-8792.41.9~2/RELEASE_ARM64_T8112 x86_64
# arch
i386

切换过去之后,在运行对应python 程序,如果没有问题就没有必要继续了。

但是可能还是会碰到:

重新安装下该库:

# pip3 uninstall psutil
# pip3 install psutil

重装该库后正常了。(如果是numpy,则pip3 uninstall numpy & pip3 install numpy)

XXX (have ‘arm64’, need ‘x86_64’) 时不时碰到一下,python的兼容问题,确实有点费事。

(全文完)

(欢迎转载本站文章,但请注明作者和出处 云域 – Yuccn

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注