源码安装Python3

一、安装Python3需要的依赖包

[root@localhost ~]# yum install -y gcc make wget openssl openssl-devel readline readline-devel zlib* libffi-devel
  • 注释:readlinebash shell 用的库,包含许多使用功能
  • 后面预编译可能会出现zipimport.ZipImportError: can't decompress data; zlib not available报错,所以先安装zlib*(包括需要的组件)
  • 后面编译安装可能会出现出现异常ModuleNotFoundError: No module named '_ctypes'报错,所以先安装libffi-devel

二、下载Python3源码包、安装

1. 下载Python3源码包
[root@localhost ~]# wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tgz 2. 解压
[root@localhost ~]# tar -xvf Python-3.8.1.tgz 3. 预编译
[root@localhost ~]# cd Python-3.8.1
[root@localhost Python-3.8.1]# ./configure --prefix=/usr/local/python3 --with-ssl 4. 编译安装
[root@localhsot Python-3.8.1]# make
[root@localhsot Python-3.8.1]# make install

三、启动Python3

[root@localhost ~]# /usr/local/python3/bin/python3
Python 3.8.1 (default, Nov 22 2020, 17:23:29)
[GCC 8.3.1 20191121 (Red Hat 8.3.1-5)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

测试是否可以使用ssl模块

[root@localhost ~]# python3
Python 3.8.1 (default, Nov 22 2020, 17:23:29)
[GCC 8.3.1 20191121 (Red Hat 8.3.1-5)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>> //没有回显什么,表示可以使用ssl模块

四、快速启动

在/usr/bin路径下生成Python3的软链接:ln -s /usr/local/python3/bin/python3 /usr/bin/python3
[root@localhost ~]# ln -s /usr/local/python3/bin/python3 /usr/bin/python3
[root@localhost ~]# python3
Python 3.8.1 (default, Nov 22 2020, 17:23:29)
[GCC 8.3.1 20191121 (Red Hat 8.3.1-5)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
[root@localhost ~]#
[root@localhost ~]# which python3
/usr/bin/python3

源码安装Python3的更多相关文章

  1. centos7源码安装Python3的前提条件

    centos7源码安装Python3的前提条件: # yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline- ...

  2. CentOS7 下源码安装 python3

    CentOS 7 下源码安装 python3   在CentOS7下,默认安装的是python2.7:为满足项目要求,安装python3 的方法如下:   1. 首先安装python3.6可能使用的依 ...

  3. CentOS6.5源码安装python3.5.2

    前提: 1.实现自动补全需要安装模块 readline-devel (yum install -y readline-devel) 2.实现支持SSL协议需安装模块 openssl-devel (yu ...

  4. Centos源码安装Python3

    CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载Python源码后编译安装. 下载python(https://www.python.org/ftp/pyt ...

  5. Linux 源码安装 Python3

    下载源码包https://www.python.org/downloads/ 解压(以3.64版本为例)wget https://www.python.org/ftp/python/3.6.4/Pyt ...

  6. mint19 源码安装python3.7

    基于Ubuntu 18.04  自带了3.6,可惜 3.7秒出. 一个原则是: 自带的3.6不要动 防止用apt install python3-XXX时版本不对. 理由: 自带的2.7和3.6都是让 ...

  7. centos7 源码安装python3

    1.非常重要!必须得先安装py3所依赖的软件包,否则可能会出现py3安装成功,却缺少相应的pip yum groupinstall "Development tools" yum ...

  8. ubuntu16.04 源码安装Python3.7 (可以在此基础上安装Tensorflow) (确保Tensorflow计算框架与系统的彻底隔离)

    Python3.7 源码下载: https://www.python.org/downloads/release/python-370/ 解压源码: tar -zxvf Python-3.7.0.tg ...

  9. CentOS 7.2 源码安装Python3.6

    1.环境 安装CentOS 7.2最小系统(CentOS-7-x86_64-Minimal-1511.iso) 2.需求 Python-3.6.4.tar.xz(官网下载) GCC(yum安装) 一堆 ...

随机推荐

  1. spring5源码编译过程中必经的坑

    spring源码编译流程:Spring5 源码下载 第 一 步 : https://github.com/spring-projects/spring-framework/archive/v5.0.2 ...

  2. 源码级深挖AQS队列同步器

    我们知道,在java中提供了两类锁的实现,一种是在jvm层级上实现的synchrinized隐式锁,另一类是jdk在代码层级实现的,juc包下的Lock显示锁,而提到Lock就不得不提一下它的核心队列 ...

  3. 201871030125-王芬 实验二 个人项目-《D{0-1}问题》软件项目报告

    实验二 个人项目-<D{0-1}问题>软件项目报告 项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/2018CST 这个作业要求链接 ...

  4. 干掉 Feign,Spring Cloud Square 组件发布

    Spring Cloud Square 是什么 谈起 Spring Cloud 生态大家一定对 Feign 不陌生,如下图所示,Feign 可以把底层(okhttp.httpclient)Rest 的 ...

  5. Sentinel上生产环境只差一步,监控数据持久化

    之前介绍了Sentinel相关的文章,小伙伴在生产实践中不知道有没有这个疑问?我们的Sentinel控制台监控的数据只能看最近5分钟的,如图 那么就导致历史数据是查看不了的,那肯定是不行的,在生产环境 ...

  6. Go 包管理与依赖查找顺序

    目录 1. 规则: 2. 编译时的依赖包查找机制 3.vendor vendor的层级搜索 4. modules 1. 规则: 同一目录下只能存在一个包 目录和目录下源文件的包命名可以不同 当包名与目 ...

  7. C语言小知识(基于Linux)——个人笔记,不定时更新

    一.switch case语法,在case中定义变量时,需要在case的有效范围内使用花括号包起来,否则会编译报错: switch (name){ case "zhangSan": ...

  8. poj_1700 题解

    题目描述:在漆黑的夜里,四位旅行者来到了一座狭窄而且没有护栏的桥边. 如果不借助手电筒的话,大家是无论如何也不敢过桥去的. 不幸的是,四个人一共只带了一只手电筒,而桥窄得只够让两个人同时过. 如果各自 ...

  9. 对象的可见性 - volatile篇

    作者:汤圆 个人博客:javalover.cc 前言 官人们好啊,我是汤圆,今天给大家带来的是<对象的可见性 - volatile篇>,希望有所帮助,谢谢 文章如果有误,希望大家可以指出, ...

  10. 判断post,ajax,get请求的方法

    判断post,ajax,get请求的方法 define('IS_GET',isset($_SERVER['REQUEST_METHOD']) ? $_SERVER['REQUEST_METHOD'] ...