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: 2024年 4月11日 星期四 17时21分59秒 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 )