最完美的 CentOS安装python3 共存python2步骤

首先去官网下载对应系统版本python3源码包:https://www.python.org/downloads/source/

解压

tar -zxvf Python-3.7.0.tgz

此时如果直接编译安装会出现 No module named "_ctype' 错误,需要安装一些依赖如下( 如果先编译安装报错再安装依赖,需要重新./configure一下 )

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum -y install gcc kernel-devel kenel-headers make bzip2
yum -y install gcc gcc-c++ zlib zlib-devel libffi-devel

 然后进行编译安装,

cd Python-3.7.0
./configure --prefix=/usr/local/python3
make && make install

安装完成后,需要在/usr/bin/目录创建快捷方式(软连接) 让python命令直接指向python3,先删除目录下的老Python

rm -f /usr/bin/python
ln -s /usr/local/python3/bin/python3 /usr/bin/python

此时python3已安装完成,输入 python -V 可以看到是3.7.0版本了。但是centos的 yum是基于python2的,此时运行yum 命令会报错。

查看 bin目录,把原先的python2 指向python的改为指向python2.6

[root@SSZXAJavaTest opt]# ll /usr/bin/python*
lrwxrwxrwx. 1 root root   30 Sep 14 08:54 /usr/bin/python -> /usr/local/python3/bin/python3
lrwxrwxrwx. 1 root root   18 Sep 14 08:55 /usr/bin/python2 -> /usr/bin/python
-rwxr-xr-x. 1 root root 9032 Aug 18  2016 /usr/bin/python2.6
rm -f /usr/bin/python2
ln -s /usr/bin/python2 /usr/bin/python2.6

修改yum中 python命令,修改第一行中的/usr/bin/python --> /usr/bin/python2 保存退出就大功告成了。

vi /usr/bin/yum
#!/usr/bin/python
import sys
try:
    import yum
except ImportError:
    print >> sys.stderr, """\
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

   %s

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
%s

If you cannot solve this problem yourself, please go to
the yum faq at:
  http://yum.baseurl.org/wiki/Faq

""" % (sys.exc_value, sys.version)
"/usr/bin/yum" 32L, 802C

如果还需要安装pip

yum -y install epel-release
yum -y install python-pip

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值