前言
最近想爬点东西,2.7比较稳定,但是因为在linux机器上用yum安装的默认是2.6.6版本的,所以需要升级到2.7。
一、安装过程
1. 先安装相应的依赖
yum -y install gcc openssl-devel bzip2-devel
如果没安装好这些依赖的,后面还要重新走编译流程,别问我为什么知道 。
2. 下载软件包
cd /opt wget https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz
3. 解压安装包
tar xvzf Python-2.7.15.tgz
4. 安装
cd Python-2.7.15
./configure --enable-optimizations
make && make altinstall
在检测脚本中加上enable-optimizations优化,主要是在这个版本上能启用PGO优化,让Python在运行时能变得更快,详细参考[2]。make 加altinstall参数,避免覆盖原来安装在/usr/bin/python 的版本。
5. 查看安装是否成功
/usr/local/bin/python2.7 -V-->
Python 2.7.15
6. 建立软连接,使系统默认python指向2.7版本
mv /usr/bin/python /usr/bin/python2.6.6 ln -s /usr/local/bin/python2.7 /usr/bin/python
7. 解决yum不支持python2.7的问题
sed -i 's/python/python2.6.6/' /usr/bin/yum
或者直接用vi编辑/usr/bin/yum把头部的python换成2.6.6。ps:编辑前记得备份。
8. 安装pip
因为2.7.15版本已经内建了ensurepip模块,所以直接运行下面的命令去安装pip即可
python -m ensurepip
ps:因为前面把默认Python版本换成了2.7.15,所以就没有指定全路径了,没换的需要确保用2.7的去安装。
输出:
Collecting setuptools Collecting pip Installing collected packages: setuptools, pip Successfully installed pip-9.0.3 setuptools-39.0.1
查看一下:
pip -V -->pip 9.0.3 from /usr/local/lib/python2.7/site-packages (python 2.7)
尝试安装一下bs4:
pip install bs4
搞定!
二、参考
1. How to Install Python 2.7.15 on CentOS/RHEL 7/6 and Fedora 27/26/25
2. Add `--enable-optimizations` configure flag. #57
3. CentOS 6.X怎么更新Python2.7.x版本
(完)