请勿在RHEL 7上使用多个Python版本在virtualenv中安装软件包

时间:2018-01-19 14:59:02

标签: python-2.7 pip virtualenv sudo rhel

我的任务是在RHEL 7虚拟机上设置Django环境。 (我来自Windows背景,所以这是一个挑战。)我按照本教程https://tecadmin.net/install-python-2-7-on-centos-rhel/安装了Python 2.7.13 32位和pip以及默认的2.7.5 64位。

这似乎很好 - 我可以使用python和2.7.13使用python2.7

访问2.7.5

然后我创建了一个指向2.7.13的虚拟环境sudo virtualenv -p /usr/local/bin/python2.7 venv,输出如下......

Running virtualenv with interpreter /usr/local/bin/python2.7 
New python executable in /home/butterp/venv/bin/python2.7 
Also creating executable in /home/butterp/venv/bin/python 
Installing setuptools, pip, wheel...done.

现在,在激活venv之后,pythonpython2.7启动了2.7.13解释器,这就是我想要的。

我使用sudo pip快速安装了我的要求,因为我收到了没有sudo的权限错误,这看起来很顺利。但是,当我尝试在Python中导入它们时,这些包不可用

(venv) [butterp@dev ~]$ python
Python 2.7.13 (default, Sep  8 2017, 03:33:09)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named django

软件包已安装到python2.7 /usr/lib/python2.7/site-packages的基本安装而不是venv,如果我使用sudo python或{{1},我可以导入它们虽然这两个命令都把我带到版本2.7.5!

sudo python2.7

这看起来像是由于我滥用[butterp@dev ~]$ sudo python Python 2.7.5 (default, May 3 2017, 07:55:04) [GCC 4.8.5 20150623 (Red Hat 4.8.5-14)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import django >>> 和/或sudo而导致的错误,但我陷入了困惑中心并且不确定如何纠正这种情况。有人可以帮忙吗?干杯!

0 个答案:

没有答案