centos7.2默认已经安装了python2.7.5,因此要安装python3.6的话,得从python官网上下载相应版本的安装包

查看python2.7

1、下载:wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz

2、解压:tar -xvJf  Python-3.6.2.tar.xz     或者 xz -d Python-3.6.2.tar.xz 解压成 Python-3.6.2.tar

tar  xvf Python-3.6.2.tar

3、进入解压目录编译安装

./configure prefix=/usr/local/python
make
make install

4、软连接

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

会提示报错

因为已经默认指向了python2,所以把原来的python备份

在 /usr/bin下

mv python python.bak

5、软连接建立完成后

python -V

python2 -V

但是进入python3 后,发现退格键,上下键无法使用

是缺少一些依赖包导致。因此要安装一些依赖包。

使用yum安装,因为yum用到的还是python2

所以需要修改yum的文件,改为python2

继续报错

根据错误提示,修改 /usr/libexec/urlgrabber-ext-down 文件也改成python2

再次执行

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

清空yum 缓存

yum clean all

yum makecache

然后重新yum,此时yum成功完成

再运行python

可以发现退格,上下键还不能使用

单独安装readline

pip install readline

结果发现pip没有安装,需到官网下载pip安装包

wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz#md5=35f01da33009719497f01a4ba69d63c9

下载好后,提示

下载setuptools

wget https://pypi.python.org/packages/3e/ec/9fec74fc9e96dca889df66833fc2b5eb0a158d3d6a71b9ad016dfd2a301f/setuptools-19.6.2.tar.gz#md5=ec3c428f0b81f75c8b9d19e9815da5d9

进入setptools的解压目录

python setup.py install

结果又报错

发现应该是python3执行的时候报错

改用python2 setup.py install解决

至于安装pip报错的缘故也是python3 不兼容导致。

用python2执行后,pip也安装成功

执行pip install readline
结果还是报错
 
至于出现这个错误需安装 python-devel这个模块
 
yum install python-devel 
安装好后,再执行pip install readline 提示成功

同时考虑重新编译安装python3.6.2

编译构成报错

于是改用安装最新的setuptools,支持python3.6.2的安装包,同时pip也用最新的包
 
结果还是提示上面的报错。这时候,下载zlib的最新安装包
wget http://zlib.net/zlib-1.2.11.tar.gz
编译安装zlib
./configure
make & make install
 
然后再次重新编译安装 python3.6.2
此次编译安装再没有出错
同时也提示pip9.0和setuptools安装成功
 
 
特地去pip和setuptools的安装目录下执行了 python setup,py install 提示都成功了
再到python的交互模式下,按上下键,退格键也不会再出现乱码。
至此python3和python2都可以正常使用。终于把环境搭建成功

centos7.2下安装python3.6.2的更多相关文章

  1. Centos7环境下安装python3.6.4 并与python2共存

    最近安装了新系统centos7,本身自带python2.7,但是由于需要使用python3 来运行一些应用,所以想到在centos环境下安装python3,并保证其和python2 可以共存. 步骤如 ...

  2. Centos7.6下安装Python3.7

    前言 话说不会开发的运维不是一个好的DBA,所以我要开始学习python了,写博客记录一下我的学习过程,另外别欺负我新来的,那个每天更博的技术流ken是我哥. 不说了,时间宝贵,开整. 1.首先来看一 ...

  3. Centos7.7下安装Python3.7 并兼容python2.7

    前言 1.首先来看一下系统版本 [root@python3 ~]# cat /etc/redhat-release CentOS Linux release 7.7.1810 (Core) 2.更新一 ...

  4. CentOS7.5下安装Python3.7 --python3

    1.将本地安装包上传到远程主机上 scp Python-3.7.0.tgz root@123.206.74.24:/root 2.扩展 安装Python之前安装Python相关的依赖包(主要是u红色部 ...

  5. centos7.2下安装python3.6.5

    yum groupinstall 'Development Tools' 出现错误 系统 centos 7.3 使用命令 yum groupinstall 'Development Tools' 出现 ...

  6. Centos7.4下安装Python3

    安装Python3 安装依赖包 yum -y groupinstall "Development tools" yum -y install zlib-devel bzip2-de ...

  7. centos7下安装python3.7

    记录在2018年最后一个工作日: Linux环境坑爹得要死,环境本身有python2和python3.7两个版本:安装django2的时候,发现默认是python2:把python软连接到python ...

  8. Windows下安装Python3.4.2

    一.Windows下安装Python3.4.2 1.下载Windows下的Python3.4.2.exe 2.指定一个目录安装,然后下一步 3.配置环境变量包括Python.exe的文件.目录如下图所 ...

  9. Linux下安装Python3.3.0

    Linux下安装Python3.3.0_路易_新浪博客 Linux下安装Python3.3.0 (2013-01-08 11:45:37)

随机推荐

  1. golang语言中sync/atomic包的学习与使用

    package main; import ( "sync/atomic" "fmt" "sync" ) //atomic包提供了底层的原子级 ...

  2. sqlserver数据库命名规则

    sqlserver数据库命名规则: (1)第一个字符必须是字母或“_”.“@”.“#” (2)数据库名称不能是T-SQL的保留字 (3)不允许嵌入空格或其他特殊字符

  3. [Z]haproxy+keepalived高可用群集

    http://blog.51cto.com/13555423/2067131 Haproxy是目前比较流行的一种集群调度工具Haproxy 与LVS.Nginx的比较LVS性能最好,但是搭建相对复杂N ...

  4. python学习笔记Day3

    set有点:1.访问速度快 2.天生解决了重复问题 tuple与set区别: 元组可重复,set不可重复创捷集合1 >>> s1.add('alex')>>> pr ...

  5. div中的img垂直居中的方法,最简单! 偷学来的,,,不要说我抄袭啊(*^__^*)

    让div中的img垂直居中,水平居中很简单,用text-align:center; 让div中img垂直居中的方法其实也很简单 重点是: display:table-cell;   让标签具有表格的属 ...

  6. devexpress WinForms MVVM

    WinForms MVVM This section is dedicated to the Model-View-ViewModel (MVVM) architectural pattern. Yo ...

  7. C# devexpress gridcontrol 分页 控件制作

    这个小小的功能实现起来还是有一点点复杂, 分页单独一个usercontrol 出来,导致查询换页 与gridcontrol页面分离,  一般通过换页事件通知girdcontrol 做出查询 查询来说有 ...

  8. opencv 学习总结 方法总结

    师者传道受业解惑也,图片识别是门学科,需要师者传教,才会较快解开谜团,解开困惑,没人引导,要学会图片识别,有点难度,因为其中的做法超出自己的想象范围. 大家都知道,在超出想象范围,或者从未想到的方式, ...

  9. [RF] Robot Framework新手干货(转载)

    Robot Framework用法总结 Robot Framework完整流程学习系列一 Robotframework自动化新手常见问题总结--(基础篇)

  10. springmvc相关

    Springmvc的请求注解可分为四类: url请求地址(PathVariable). head请求头(RequestHeader.CookieValue). body请求体(RequestParam ...