M1芯片Mac使用virtualenv创建Python3.5虚拟环境报错如何解决
问题原因
你遇到的报错是因为本地不存在Python3.5的可执行解释器,virtualenv无法定位到指定版本的Python。另外Python3.5没有适配M1芯片的ARM架构,需要通过Rosetta 2转译运行x86版本的Python3.5。
解决方法
首先安装Rosetta 2(已安装可跳过)
执行命令:softwareupdate --install-rosetta
按提示完成安装即可。安装pyenv管理多版本Python
用Homebrew安装pyenv:brew install pyenv
切换到x86_64架构的终端会话:arch -x86_64 zsh编译安装Python3.5
执行:pyenv install 3.5.10
安装完成后临时激活该版本:pyenv shell 3.5.10创建虚拟环境
直接执行原命令即可:virtualenv -p python3.5 MyVirtualEnv
若仍报错,可以直接指定解释器绝对路径:virtualenv -p ~/.pyenv/versions/3.5.10/bin/python MyVirtualEnv
使用注意
后续使用该虚拟环境安装依赖、运行代码时,如果遇到架构兼容报错,都先执行arch -x86_64 zsh切换到x86架构终端后,再激活虚拟环境操作即可。
内容的提问来源于stack exchange,提问作者Lorenzo Di Gianvittorio
相关产品推荐
相关产品推荐

