linux上python3的安装
我这里使用的时centos7-mini,centos系统本身默认安装有python2.x,版本x根据不同版本系统有所不同,可通过 python --V 或 python --version 查看系统自带的python版本
有一些系统命令时需要用到python2,不能卸载。下面介绍python3的安装步骤:
一、源码包下载
下载地址:https://www.python.org/downloads/source/
选择linux/unix那个平台,然后下载python3最近的包。

下载下的包为tgz格式。
【前提,安装好依赖包】
1、安装依赖包
1)首先安装gcc编译器,gcc有些系统版本已经默认安装,通过 gcc --version 查看,没安装的先安装gcc,yum -y install gcc
2)安装其它依赖包,(注:不要缺少,否则有可能安装python出错,python3.7.0以下的版本可不装 libffi-devel )
#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 libffi-devel
不安装依赖包,会出现各种报错问题。
二、解压
在进行解压之前先创建一个解压目录,存放python3程序:
# mkdir /usr/local/bin/python3
接着把刚才下载的Python3.7.3安装包解压在该目录下:
# tar -zxvf Python-3.7.3.tgz
三、配置编译安装
先创建一个存放python3安装程序的目录
#mkdir -p /usr/local/python3
先进入到刚才解压的目录:
# cd Python-3.7.3
然后配置一下安装目录,安装到我们刚刚创建的目录 /usr/local/python3 里,这样做的好处是下次想卸载软件直接卸载该目录下的就可以了:
#./configure --prefix=/usr/local/python3
接着编译一下:
#make
最后就是安装了:
#make install
忽略下面的问题,都是因为依赖包的问题..................
>>>>>>问题1、编译安装出现如下问题

解决办法:
# yum -y install zlib* 先安装zlib相关依赖包
# vi Modules/Setup
找到下面这句,去掉注释 ,然后再次编译安装。
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz

>>>>>>问题2、再次编译安装,又遇到问题

报错 ModuleNotFoundError: No module named '_ctypes',其实是缺少了一个新需要的开发包libffi-devel,安装后即可
# yum install libffi-devel -y (包在base)
四、建立软连接
#ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
#ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3
五、测试一下python3是否可以用
#python3 如下图则安装成功

六、安装pip
这里不用安装pip,python3中bin下面自带pip3.
linux上python3的安装的更多相关文章
- Linux上python3的安装和使用
centos7默认是装有python的,咱们先看一下 #检查python版本 [root@oldboy_python ~ 17:23:54]#python -V Python 2.7.5 但是 pyt ...
- 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)
RAC在LINUX上使用NFS安装前准备(六) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇 ...
- 怎么在Linux上下载并安装ESET NOD32 Antivirus 4桌面版
转自:怎么在Linux上下载并安装ESET NOD32 Antivirus 4桌面版 下载并安装ESET NOD32 Antivirus 4的Linux桌面版,根据下面的步骤一步一步的来: I. 下 ...
- CentOS7上Python3.5安装
CentOS7上Python3.5安装 1.下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 2.上传到服务器 3. yum in ...
- JProfiler远程监控Linux上Tomcat的安装过程细讲(步骤非常详细!!!)
JProfiler远程监控Linux上Tomcat的安装过程细讲(步骤非常详细!!!) 1.文件准备: 服务器:CentOS Linux release 7.3.1611 (Core) Apa ...
- 转载:【Oracle 集群】RAC知识图文详细教程(六)--RAC在LINUX上使用NFS安装前准备
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- Linux上用mvn安装node.js
Linux上用mvn安装node.js 上一篇blog简略的讲了ubuntu系统的安装,接下来讲讲Ubuntu上的基于node.js的web开发环境的搭建. Node在快速构建网络服务有着极大的优势, ...
- 大数据学习——Linux上常用软件安装
4.1 Linux系统软件安装方式 Linux上的软件安装有以下几种常见方式: 1.二进制发布包 软件已经针对具体平台编译打包发布,只要解压,修改配置即可 2.RPM发布包 软件已经按照redhat的 ...
- Windows 和 Linux 上Redis的安装守护进程配置
# Windows 和 Linux 上Redis的安装守护进程配置 Redis 简介 Redis是目前最常用的非关系型数据库(NOSql)之一,常以Key-Value的形式存储.Redis读写速度 ...
随机推荐
- Paper Review: Epigenetic Landscape, Cell Differentiation 02
I'll share another review paper about Epigenetic Landscape, it comes from Nature Review, published i ...
- Docker部署freeswitch
1. clone配置文件到本地服务器 git clone https://github.com/BetterVoice/freeswitch-container.git 相关Dockerfile如下: ...
- 201512-2 消除类游戏 Java
思路: 用二维数组,对于每一个棋子,向右看三个,向下看三个,如果相等则置为负数,最后遍历输出. import java.util.Scanner; public class Main { public ...
- 第1章 MYSQL 体系结构和存储引擎
一.定义数据库和实例 在集群的条件下,存在单个数据库对应多个实例 二.Mysql 体系结构 三.Mysql 存储引擎及各存储引擎之间的比较 命令:show engines; 四.连接 MySQL 4. ...
- CSP模拟赛2游记
这次由于有课迟到30min,了所以只考了70min. 调linux配置调了5min,只剩下65min了. T1:有点像标题统计,但要比他坑一点,而且我就被坑了,写了一个for(int i=1;i< ...
- Gson使用指南(二)
注:此系列基于Gson 2.4. 一.Gson的流式反序列化 自动方式 常用的重载方法: Gson.toJson(Object); Gson.fromJson(Reader,Class); Gson. ...
- Python语言学习:列表常用的方法
python 列表常用的方法 1.append( ):用于在列表末尾添加新的对象 list.appent(obj) #obj:添加到列表末尾的对象 #!/usr/bin/python aList = ...
- [HDU多校]Ridiculous Netizens
[HDU多校]Ridiculous Netizens 点分治 分成两个部分:对某一点P,连通块经过P或不经过P. 经过P采用树形依赖背包 不经过P的部分递归计算 树型依赖背包 v点必须由其父亲u点转移 ...
- 【网络流】Modular Production Line
[网络流]Modular Production Line 焦作上的一道,网络流24题中的原题.... https://nanti.jisuanke.com/t/31715 给出了1e5个点,但是因为最 ...
- 物联网应用层协议选择和分析--MQTT、CoAP 、HTTP、XMPP、SoAP
MQTT协议 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)最早是IBM开发的一个即时通讯协议,MQTT协议是为大量计算能力有限且工作在低带宽.不 ...