尝试在OS X中使用virtualenv启动Python时出现"非法指令:4"

Win*_*ags 6 macos virtualenv python-2.7

我已经在一个virtualenv环境中使用Python 2.7.10 几个月了.

昨天,激活环境很顺利,但是今天突然间我在尝试从终端启动Python时遇到了这个神秘的错误:

Illegal instruction: 4

我没有改变我的环境(AFAIK),所以我很难尝试解决这个错误是什么以及导致它的原因.

Python在这种virtualenv环境之外工作正常.通过/usr/local/bin它运行时没有问题.

Win*_*ags 1

我已经多次遇到这个问题了。虽然我不能确定实际问题是什么,但我相信这基本上意味着 Python 安装中的某些文件virtualenv已损坏。

我将虚拟环境保存在同步的 Dropbox 文件夹中,因此这可能是导致该问题的主要原因。

从备份存档恢复虚拟环境对我有用。或者简单地重新安装一个相同的虚拟环境。

  • cd <path/to/old_env>首先,尝试通过和激活有问题的环境source /bin/activate
  • 如果成功激活,cd则到驱动器上的可访问位置并运行pip freeze > requirements.txt以导出当前安装的 Python 模块的列表。
  • 删除旧环境。
  • 安装计算机上最新版本 Python 2 的新虚拟环境,通过virtualenv <path/new_env>
  • 或者,如果您想使用特定的 Python 版本,请首先确保您的驱动器上有它,然后执行virtualenv -p <path>. 假设您已经下载了带有 Homebrew 的 Python 版本,例如:virtualenv -p /usr/local/bin/python2.6 <path/new_env>
  • 通过激活虚拟环境cd <path/new_env>,然后执行source /bin/activate
  • 假设您保留了以前执行的要重新安装的模块列表pip freeze > requirements.txtcd到文本文件所在的文件夹并执行pip install -r requirements.txt
  • 否则,请手动重新安装模块pip