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. 定时器NSTimer

    /** 添加定时器 */@property (nonatomic, strong) NSTimer *timer; - (void)addTimer{ // 2秒后,自己 调用nextImage方法 ...

  2. sqlite 数据库错误 The database disk image is malformed database disk image

    收银机上的sqlite数据库经常出现这种错误,错误的原因有可能是突然断电或是一些不规范操作导致的. 网上一般的做法有两种: 方法一: 1.在https://www.sqlite.org/downloa ...

  3. .NET垃圾回收机制

    在.net 编程环境中,系统的资源分为托管资源和非托管资源.  对于托管的资源的回收工作,是不需要人工干预回收的,而且你也无法干预他们的回收,所能够做的只是了解.net CLR如何做这些操作.也就是说 ...

  4. Django ORM那些相关操作zi

    Django ORM那些相关操作   一般操作 看专业的官网文档,做专业的程序员! 必知必会13条 <1> all(): 查询所有结果 <2> filter(**kwargs) ...

  5. python 基础数据类型 之 列表

    列表:定义 和特性 列表定义和创建: 定义:[,]内以逗号分隔,按照索引,存放各种数据类型,一般没有限制,每个位置代表一个元素 range_create = list(range(0, 10))pri ...

  6. overflow visibility opacity(透明度) vertical-align 等等

     一,overflow属性:   1,四个值:    visible     默认值.内容不会被修剪,会呈现在元素框之外.    hidden        内容会被修剪,并且其余内容是不可见的.   ...

  7. 有关JVM处理Java数组方法的思考

    在Java中,获取数组的长度和String的长度是两种不同的方法,这引起了本文作者的一番思考.本文从JVM的角度,探讨了Java数组在JVM中是什么对象,有哪些成员,以及声明方法. 作者:jarfie ...

  8. Java 7.21 游戏:豆机(C++&Java)

    PS: 难点在于,随机之后的分隔,理解就很容易了 注意:槽的奇偶情况 C++: #include<iostream> #include<ctime> #include<s ...

  9. PAT 1039 到底买不买(20)(20 分)

    1039 到底买不买(20)(20 分) 小红想买些珠子做一串自己喜欢的珠串.卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖.于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要 ...

  10. BPF+XDP比较全的资料都在这里

    Dive into BPF: a list of reading material Sep 1, 2016 • Quentin Monnet◀Table of contents What is BPF ...