【发布时间】:2016-12-06 20:02:50
【问题描述】:
我使用以下命令安装了 Python 2.7:
./configure --prefix=/usr/local --enable-unicode=ucs4 --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
make && make altinstall
然后我创建了 virtualenv 指向 2.7 安装:
$ virtualenv --python=/usr/local/bin/python2.7 testbox
Already using interpreter /usr/local/bin/python2.7
New python executable in /var/python_venv/testbox/bin/python2.7
Also creating executable in /var/python_venv/testbox/bin/python
Installing setuptools, pip, wheel...done.
$ source testbox/bin/activate
(testbox) $ python
Python 2.6.6 ( , Aug 18 2016, 15:13:37)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
但如果我激活它,它指向 2.6.6:
cat /etc/redhat-release
CentOS release 6.6 (Final)
编辑:
我不确定为什么这不起作用,但我仍然可以在我的 Apache Django 应用程序中使用 virtualenv,所以我不太担心。
【问题讨论】:
-
你可以在 virtualenv 中运行
which python来检查它。看起来你的系统 python 仍在运行 -
$ which python alias python='/usr/bin/python' /usr/bin/python
-
对。哪个不是
/usr/local/bin/python2.7 -
您必须编辑您的
PATH变量并确保/usr/local/bin/在/usr/bin/之前 -
是的,但为什么忽略 --python=/usr/local/bin/python2.7 ?还有什么在这里玩
标签: python unix virtualenv