wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz --no-check-certificat

gunzip Python-3.6.1.tgz

tar xf Python-3.6.1.tgz

cd Python-3.6.1

mkdir /usr/local/python36

./configure --prefix=/usr/local/python36/

make && make install

然后出现报错:

zipimport.ZipImportError: can't decompress data; zlib not available

解决办法:

首先确认下是否安装了zlib、zlib-devel

[root@oracle Python-3.6.1]# pwd
/home/oracle/scripts/Python-3.6.1

然后cd Modules/

修改Setup(这是之后生成的文件)

找到下面这句,去掉注释 

#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz

然后重新执行下面:

./configure --prefix=/usr/local/python36/

make && make install

注意:

这是没有make && make install之前

或者直接yum install -y zlib、zlib-devel,然后修改Modules/Setup.dist中:

找到下面这句,去掉注释 

#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz

由于本身系统是2.x的版本:

[root@oracle Python-3.6.1]# mv /usr/bin/python /usr/bin/python_2.x

[root@oracle Python-3.6.1]# ln -sv /usr/local/python36/bin/python3 /usr/bin/python

python3 python3.6 python3.6-config python3.6m python3.6m-config python3-config
[root@oracle Python-3.6.1]# ln -sv /usr/local/python36/bin/python3.6 /usr/bin/python
`/usr/bin/python' -> `/usr/local/python36/bin/python3.6'
[root@oracle Python-3.6.1]# python
Python 3.6.1 (default, Jul 13 2017, 14:31:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

python3.6版本安装完成后,原有的yum会无法使用,进行下面修改:

编辑/usr/bin/yum的第一行:

#!/usr/bin/python2.6     改成这样就可以使用了

解决:ImportError: No module named '_sqlite3'

yum install sqlite-devel
然后重新编译python3.6
tar xf Python-3.6.1.tgz
cd Python-3.6.1
./configure --prefix=/usr/local/python36/
make && make install     

For multiple versions of Python, use altinstall instead of install.

由于该linux上存在多版本的python,所以改为:

make && make altinstall

[root@node1 Python-3.6.1]# python
Python 3.6.1 (default, Aug 16 2017, 16:05:59)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-18)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> import sqlite3
>>> exit()

 

在linux环境下安装python3.6的更多相关文章

  1. linux环境下安装python3的方法(转)

    Linux 安装python3.7.0   我这里使用的时centos7-mini,centos系统本身默认安装有python2.x,版本x根据不同版本系统有所不同,可通过 python --V 或 ...

  2. Linux环境下安装python3

    1.安装前准备 CentOS 7 中默认安装了 Python,版本:2.7.5,由于很多基本的命令.软件包都依赖旧版本,比如:yum.所以,在更新 Python 时,建议不要删除旧版本,而且新旧版本可 ...

  3. 在Linux环境下安装Python3

    参考链接:https://blog.csdn.net/zhangdongren/article/details/82685932

  4. Linux 环境下安装python相关

    目录 Linux 环境下安装python相关 linux软件包管理工具之yum工具(如同pip3工具) yum源理解 下载阿里云的.repo仓库文件 ,放到/etc/yum.repos.d/ yum安 ...

  5. 尚学python课程---11、linux环境下安装python注意

    尚学python课程---11.linux环境下安装python注意 一.总结 一句话总结: 准备安装依赖包:zlib.openssl:yum install zlib* openssl*:pytho ...

  6. 尚学linux课程---10、linux环境下安装python

    尚学linux课程---10.linux环境下安装python 一.总结 一句话总结: 直接在官网下载python的源码包即可,然后在linux下安装 linux下安装软件优先想到的的确是yum,但是 ...

  7. Linux环境下安装Tigase XMPP Server

    Tigase是一种XMPP服务器,可以作为采用XMPP协议的各种IM(Instant Messeging)工具(如Pandion.Spark等)的服务器. 在Linux环境下安装Tigase的步骤如下 ...

  8. linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg)

     linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg) 2013-11-10 16:51:14 分类: 系统运维 为什么要写这篇文章? 答:通过常规的三大步(./confi ...

  9. Linux环境下安装NodeJS和mongoDB

    前面的话 本文将详细介绍如何下Linux环境下安装NodeJS和mongoDB NodeJS [1]使用二进制包安装 1.在官网下载Linux环境下的NodeJS安装包 2.通过xftp软件将安装包上 ...

随机推荐

  1. CodeForces 732C Sanatorium

    C. Sanatorium time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  2. 20165330 2017-2018-2 《Java程序设计》第6周学习总结

    课本知识总结 第八章 常用实用类 String类 String对象 构造方法: 使用String类声明对象并创建对象 String s = new String("we are studen ...

  3. ArcEngine之Provide your license server administrator with the following information.error code =-42

    今天打开VS,不一会就出现了下面的对话框,感到非常疑惑,仔细一想,原来是昨天不小心把权限弄错了! 解决办法:在控价中找到AxLicenseControl,右键属性,把权限改为ArcGIS Engine ...

  4. java generic super, extend

    //Apple Orange 都继承自Fruit类,同时Jonathan是Apple的子类    List<? extends Fruit> list = new ArrayList< ...

  5. dstat命令--检查linux系统性能

    系统性能的相关工具:vmstat.netstat.iostat.ifstat. dstat命令可以查看虚拟内存.网络连接和接口.cpu活动.输入/输出设备等.

  6. Win10图标显示不正常解决办法

    当缓存文件出现问题时,就会引发系统图标显示不正常: 1.由于图标缓存文件是隐藏文件,我们需要在资源管理器中将设置改为“显示所有文件”. 2.同时按下快捷键 Win+R,在打开的运行窗口中输入 %loc ...

  7. SpringBoot与消息(RabbitMQ)

    1. JMS和AMQP JMS(Java Message Service): ActiveMQ是JMS实现; AMQP(Advanced Message Queuing Protocol) 兼容JMS ...

  8. 剑指Offer——两个链表的第一个公共结点

    题目描述: 输入两个链表,找出它们的第一个公共结点. 分析: 设置两个指针,分别从两个链表的头部开始往后遍历. 谁遍历完自己本身的,就从另一个链表开始遍历,这样大家到达第一个公共结点的时候便会相遇. ...

  9. PCI 设备详解一

    2016-10-09 其实之前是简单学习过PCI设备的相关知识,但是总感觉 自己的理解很函数,很多东西说不清楚,正好今天接着写这篇文章自己重新梳理一下,文章想要分为三部分,首先介绍PCI设备硬件相关的 ...

  10. 对比python的进程和线程:多线程是假的

    进程,是系统进行资源分配最小单位(拥有独立的内存单元).(python中多进程是真的) 线程,是操作系统最小的执行单位(共享内存资源),比进程还小.(python中多线程是假的,因为cpython解释 ...