我确实花了半天时间将我的 python 从 2.6 升级到 2.7,但到目前为止还没有成功。
Linux 发行版是:Red Hat Enterprise Linux Server release 6.5 (Santiago)
,它附带了python 2.6
,我现在想升级到python 2.7
。
但事情是这样的;我已经在 中编写了大量的脚本行python 2.6
,直到我最终屈服于需要使用较新版本的 python。所以我已经有很多软件包(filelock
、argparse
、paramkio
、psutil
和dill
更多...),安装pip install PACKAGE
到我的python 2.6
脚本中。
当我最终弄清楚如何安装 python 2.7 时(我将添加命令以供参考):
$ wget http://python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz --no-check-certificate
$ tar xf Python-2.7.6.tar.xz
$ cd Python-2.7.6
$ ./configure
$ make
$ sudo make altinstall
我又遇到了一些问题...
首先,python 2.7
安装在/usr/local/bin/python2.7
while python 2.6
is at /usr/bin/python2.6
。天真地,我认为安装python 2.7
会升级(=覆盖)现有的python 2.6
.因此,当从 shell 键入时python
,使用的解释器仍然是python 2.6
,而不是新安装的python 2.7
。
其次,运行pip install PACKAGE
仍然尝试安装以下软件包python 2.6
:
$ pip install filelock
DEPRECATION: Python 2.6 is no longer supported by the Python core team, please upgrade your Python. A future version of pip will drop support for Python 2.6
Requirement already satisfied (use --upgrade to upgrade): filelock in /usr/lib/python2.6/site-packages
顺便说一句,我注意到里面/usr/bin
有 和pip
,easy_install
不像/usr/local/bin/
(以防万一这个信息可以帮助解决这个问题)。
我该如何解决这两个问题?每当您从 shell 中输入时,
我希望python 2.7
被选中,最好是在 中,并且我想为 安装软件包。 python
python 2.6
/usr/bin/
pip
python 2.7
我尝试了很多似乎相关的建议答案,无论是在这里还是在所以,但似乎没有什么对我有用。
答案1
在README
源代码树的顶部,它描述了您可以做出的许多构建选择。特别是,您可以通过执行以下操作来安装结果文件/usr
而不是默认文件/usr/local
./configure --prefix=/usr
make clean
make
sudo make install
例如,这将安装/usr/bin/python
为 的符号链接python2
,以及真正的二进制文件python2
的符号链接python2.7
。在进行最终操作之前,您可以sudo make install
通过将非 root 安装到一个简单的子目录中来轻松检查这一点x
:
make DESTDIR=x install
所有文件都将安装在下面x
,然后您可以浏览以查看它是否符合您的需求。例如,
ls -l x/usr/bin/
-rwxr-xr-x 1 meuh meuh 95 Sep 10 11:39 2to3
-rwxr-xr-x 1 meuh meuh 93 Sep 10 11:39 idle
-rwxr-xr-x 1 meuh meuh 78 Sep 10 11:39 pydoc
lrwxrwxrwx 1 meuh meuh 7 Sep 10 11:39 python -> python2
lrwxrwxrwx 1 meuh meuh 14 Sep 10 11:39 python-config -> python2-config
lrwxrwxrwx 1 meuh meuh 9 Sep 10 11:39 python2 -> python2.7
lrwxrwxrwx 1 meuh meuh 16 Sep 10 11:39 python2-config -> python2.7-config
-rwxr-xr-x 1 meuh meuh 7991432 Sep 10 11:39 python2.7
-rwxr-xr-x 1 meuh meuh 1668 Sep 10 11:39 python2.7-config
-rwxr-xr-x 1 meuh meuh 18541 Sep 10 11:39 smtpd.py