一、 从Python官网到获取Python3的包, 切换到目录/usr/local/src

wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz

二、 使用命令如下命令进行解压缩:

xz -d Python-3.5..tar.xz // 将xz文件解压
tar -xf Python-3.5..tar

三、 在/usr/local路径下创建目录--python3.5, 为第4步的安装目录

 mkdir /usr/local/python3.

四、 编译安装

 $cd /usr/local/src/Python-3.5.
#./configure --prefix=/usr/local/python3.
#make all
#make install
#make clean
#make distclean

五、 检查是否安装成功

 /usr/local/python3./bin/python3. -V
Python 3.5.

六、查看环境变量,启动python时默认按照PATH的顺序进行查找,在/usr/bin中的python此时为Python2.6.6的

 $echo $PATH
/usr/lib/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/gordon/bin

七、修改软连接,启动python时指向python3.5

1、备份python

mv  /usr/bin/python  /usr/bin/python2.6.6 // 备份centos中默认2.6.6的python

2、修改软连接

 ln -s /usr/local/python3./bin/python3 /usr/bin/python

3、 验证默认是否启动python3.5

 $ python -V
 Python 3.5.

八、此时,系统中的yum命令将不能使用,因为其依赖原来的python2.6.6 修改yum的第一行:

 vim /usr/bin/yum
#!/usr/bin/python2.6.6

可能还需要修改该路径下的第一行

vim /usr/libexec/urlgrabber-ext-down 将 #! /usr/bin/python 改成  #!/usr/bin/python2.6.6

遇到的错误:

升级了python之后,需要重新安装pip命令。要不然pip安装的路径会出错。(因为之前安装python的时候,可能设置--prefix参数),最好是用源码安装的方式重新安装(http://www.cnblogs.com/hoojjack/p/8672612.html)

1、pip 错误

 [root@docker Python-3.5.]# pip
Traceback (most recent call last):
File "/usr/bin/pip", line , in <module>
from pip._internal import main
ImportError: No module named 'pip._internal'

说明pip的映射文件没有安装正确,在安装python3.5时,默认会安装pip3.5

备份原来系统默认的:mv  /usr/bin/pip  /usr/bin/pip_bak,创建pip3.5的软链接  ln -s /usr/local/bin/pip3.5  /usr/bin/pip

 [root@docker local]# mv /usr/bin/pip /usr/bin/pip_bak
[root@docker local]# ln -s /usr/local/bin/pip3. /usr/bin/pip
[root@docker local]# pip Usage:
pip <command> [options]

2、You are using pip version 7.1.2, however version 10.0.1 is available.You should consider upgrading via the 'pip install --upgrade pip' command.

 [root@docker local]# pip install --upgrade pip

3、升级后,交互模式下方向键、退格键 Backspace 等出现乱码的问题。

yum install readline  readline-devel

如果发现系统中已经有readline 库了,只是在/lib64/目录中,于是乎,做了软链到/usr/lib/ 和 /usr/lib64/

 ln -s  /lib64/libreadline.so. /usr/lib/

 ln -s  /lib64/libreadline.so. /usr/lib64/

 ln -s  /lib64/libreadline.so.6.0 /usr/lib/
6
ln -s /lib64/libreadline.so.6.0 /usr/lib64/

重新编译安装一遍python35,问题可以解决。

centos6升级python版本至python3.5的更多相关文章

  1. linux服务器升级python版本(python2与python3共存)

    linux服务器升级python版本 ######################################## 第一步先安装sqlite-devel,因为python2也有这个,python3 ...

  2. CentOS 6下升级Python版本

    CentOS6.8默认的python版本是2.6,而现在好多python组件开始只支持2.7以上的版本,比如说我今天遇到的pip install pysqlite,升级python版本是一个痛苦但又常 ...

  3. VPS 的 CentOS6 升级 Python 的方法

    VPS 的 CentOS6 升级 Python 的方法 centos默认安装python2.6.由于python和centos关联紧密,所以不建议卸载,进行编译升级 1.新开的VPS务必系统更新 yu ...

  4. linux下面升级 Python版本并修改yum属性信息

    最近需要在linux下使用python,故需要升级一下python版本,上网查询了一下相关资料,更新了一下linux下面的python环境,记录如下: linux下面升级 Python版本并修改yum ...

  5. CentOS 5升级Python版本(2.4>2.7)

    安装SALT时,需要这样作,公司有一批REDHAT5的,弄起来... 然后却是: Missing Dependency: python(abi) = 2.6 is needed by package ...

  6. CentOs 6.x 升级 Python 版本【转】

    在CentOS 6.X 上面安装 Python 2.7.X CentOS 6.X 自带的python版本是 2.6 , 由于工作需要,很多时候需要2.7版本.所以需要进行版本升级.由于一些系统工具和服 ...

  7. Linux系统下升级Python版本步骤(suse系统)

    Linux系统下升级Python版本步骤(suse系统) http://blog.csdn.net/lifengling1234/article/details/53536493

  8. Centos6.5下升级Python版本

    Cenos6.5升级Python2.6到2.7 1.下载源码包 wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz 2.进行 ...

  9. Centos6.6升级python版本

    centos原生python为2.6.6,可以通过下面的命令查看 #python -V Python 注:在安装新版本前,请先安装zlib\openssl组件,如果你确认你用不到这个,也可以不装 需要 ...

随机推荐

  1. LG2852/BZOJ1717 「USACO2006DEC」Milk Patterns 离散化+后缀数组

    问题描述 LG2852 题解 字符串性质:字符串\(s\)的每个字串等于每个后缀的所有前缀 对输入的东西离散化,然后把数值看做\(\mathrm{ASCII}\)后缀排序 二分答案,二分长度. 显然一 ...

  2. Push to origin/master was rejected

    在IDEA中往码云上传项目的时候出现了如下的错误:Push to origin/master was rejected 因为我是把代码上传到一个新的仓库里面,所以第一次提交的时候和仓库里面的东西不同步 ...

  3. xpath获取标签对本身含内容, 获取html内容

    通常使用xpath我们直接定位到标签后, 使用/text() 或 //text()来获取标签对之间的文本值, 但特殊情况下我们也需要获取标签本身含文本值, 操作如下: 文件为html, 标签对结构如下 ...

  4. oracle--DG初始化参数

    下列参数为Primary角色相关的初始化参数 DB_NAME 注意保持同一个Data Guard中所有数据库DB_NAME相同 例如:DB_NAME=kingle DB_UNIQUE_NAME 为每一 ...

  5. jquery取消绑定的方法

    jquery取消绑定的方法 一般用变量控制 不要用unbind() 相应比较慢 <pre> $('.choseitem').on('click', function () { //如果设置 ...

  6. 如何在同一行里执行多个linux命令?

    如果前一个命令能够成功执行,那么可以使用"&&"操作符(引号内)来合并多个后续的命令. 举例: cd /my_folder && rm *.jar ...

  7. CountdownLatch例子

    CountdownLatch 一个线程或者多个线程等待其他线程完成了再接着往下执行 public class CountDownLatchTest { ); private static Random ...

  8. [转帖]linux基础知识大纲

    linux基础知识大纲 https://blog.csdn.net/CSDN___LYY/article/details/80810403 1.Linux操作系统概述Linux操作系统的发展过程.创始 ...

  9. freemarker模板文件的4个组成部分

    FreeMarker模板文件主要由以下4个部分组成:1.文本,直接输出的部分.2.注释,即<#–…–>格式不会输出.3.插值(Interpolation):即${..}或者#{..}格式的 ...

  10. SublimeText3安装Markdown插件

    由于Webstrom对md文件的预览效果并不理想(与实际网页编译效果差别较大),所以我又改用Sublime进行本地编辑,下面介绍一下怎么搭建环境. 插件安装 整套环境我们就需要两个插件:Markdow ...