centos6.7升级python3.6.1
--安装依赖包
yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel wget gcc
下载python3.6.1
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
把python移到 /usr/local 路径下
mv Python-3.6.1.tgz /usr/local/
在/usr/local路径下解压tgz包
tar -zxvf Python-3.6.1.tgz
删除旧版本依赖
ll /usr/bin | grep python
mv /usr/bin/python /usr/bin/pythonbak
rm -rf /usr/bin/python
进入Python-3.6.1文件夹,进行配置
./configure
编译
make
编译安装
make install
新建软连接
ln -s /usr/local/bin/python3.6 /usr/bin/python
发现/usr/local/bin 下,无python3的任何版本,删除tgz包,重新解压编译即可
查看python版本
python -V
发现依然是python2.7的版本, 经排查,usr/bin下已无python连接到python2 的信息了
继续查找Python2 对应的路径,发现在/usr/local/bin下
进入/usr/local/bin,删除该软连接
mv /usr/local/bin/python /usr/local/bin/pythonbak
添加新的软连接,指向python3.6
ln -s /usr/local/bin/python3.6 /usr/local/bin/python
python -V 查看指向的python版本
python -V
总结
- tgz configure会出异常,删除tgz包重新下载即可(多次configure都不行,最后删除tgz重新尝试才ok)
- 软链接,有的时候存在/usr/bin下,其实因每台系统而异,linux大法还是好,没到重装系统那一步。