赞
踩
问题最开始出现是因为使用 IntelliJ idea 创建 python 的 venv 时,提示 virtualenv 错误。不仅提示错误,创建出来的 venv 下 bin 文件无法执行。
而在之前 x86 的 MacOS 上并没有此问题。
通过手动使用 virtualenv 创建 venv 时发现,但是如果想要使用 python 2,那么在使用 virtualenv 创建的 venv 中,bin 文件会出现无法执行的问题 zsh: killed {anything}
。
提示
$ ./venv/bin/python
zsh: killed ./venv/bin/python
如果使用 python 3 ,则没有此问题。
此问题在 Apple M1 上特别突出,根本原因是 virtualenv 创建的 bin 是 arm 架构,而 python 2 是 x86 架构,导致程序不兼容。
解决方案 参考 https://stackoverflow.com/questions/66860350/python-pip-process-are-killed-in-virtualenv-apple-m1-chip
使用 x86 架构执行 virtualenv 即可,操作如下:
csrutil disable
. ref: Disabling and Enabling System Integrity Protectionarch -x86_64 $SHELL
, 比如 sudo arch -x86_64 virtualenv venv
venv
目录,venv/bin/python
可以成功执行TIPS: 必须关闭 SIP
以上的执行方法可以针对任何因为架构问题导致无法执行的情况。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。