centos安装python3.8.1_在CentOS 8上编译安装Python 3.8.1
CentOS 8包含Python 3.6版本,可以使用dnf工具安装或更新。
在撰写本文时,Python 3.8是Python语言的最新主要版本。它包括许多新特性,如赋值表达式、仅定位的参数、f-string支持等等。Python 3.8在标准的CentOS 8存储库中不可用。
本指南解释了如何从源代码在CentOS 8上构建Python 3.8。我们还将向您展示如何创建虚拟环境。
在CentOS 8上安装Python 3.8
从源代码编译Python需要C/C++编译器和其他开发包。首先要做的是在CentOS 8上安装构建Python所需的包。为此,作为root或sudo用户运行以下命令:
[root@iZwz9g27qld9va1076x1rrZ ~]#dnf groupinstall 'development tools'[root@iZwz9g27qld9va1076x1rrZ~]#dnf install bzip2-devel expat-devel gdbm-devel \
ncurses-devel openssl-devel readline-devel \
sqlite-devel tk-devel xz-devel zlib-devel wget
使用wget从Python下载页面下载最新版本的源代码。 当前,如新的Python 3.8版本是3.8.1。 如果有可供下载的新版本,请在以下命令中更改VERSION变量:
[root@iZwz9g27qld9va1076x1rrZ ~]#VERSION=3.8.1
[root@iZwz9g27qld9va1076x1rrZ ~]#wget https://www.python.org/ftp/python/${VERSION}/Python-${VERSION}.tgz
下载完成后,解压缩刚下载的文件:
[root@iZwz9g27qld9va1076x1rrZ ~]#tar -xf Python-${VERSION}.tgz
转到Python源目录并运行configure脚本,该脚本执行许多检查以确保系统上的所有依赖项都存在:
[root@iZwz9g27qld9va1076x1rrZ ~]#cd Python-${VERSION}
[root@iZwz9g27qld9va1076x1rrZ Python-3.8.1]# ./configure --enable-optimizations
--enable-optimizations选项通过运行多个测试来优化Python二进制文件。 这会使构建过程变慢。
通过运行以下命令启动Python 3.8构建过程:
[root@iZwz9g27qld9va1076x1rrZ Python-3.8.1]# make -j 4
修改-j以对应于处理器中的内核数。 您可以通过键入nproc查找编号。
构建过程完成后,安装Python二进制文件:
[root@iZwz9g27qld9va1076x1rrZ Python-3.8.1]# sudo make altinstall
请不要使用标准的make install,因为它将覆盖默认的系统Python二进制文件。
OK。 CentOS系统上已经安装了Python 3.8,您可以开始使用它了。 通过键入以下内容进行验证:
[root@iZwz9g27qld9va1076x1rrZ ~]# python3.8
--version Python 3.8.1
[root@iZwz9g27qld9va1076x1rrZ ~]# python3
Python 3.6.8 (default, Nov 21 2019, 19:31:34) [GCC 8.3.1 20190507 (Red Hat 8.3.1-4)] on linux Type "help", "copyright", "credits" or "license" for more information.
输出应显示Python版本
创建虚拟环境
Python虚拟环境是一个独立的目录树,其中包括Python安装和许多其他软件包。 它允许您将Python模块安装在特定项目的隔离位置,而不是全局安装。 这样,您不必担心会影响其他Python项目。
在此示例中,我们将在用户主目录内创建一个名为linuxidc_app的新Python 3.8项目。
首先,创建项目目录并切换到该目录:
[linuxidc@localhost ~/www.linuxidc.com]$mkdir ~/linuxidc_app && cd ~/linuxidc_app
在项目根目录内部,运行以下命令以创建一个名为linuxidc_app_venv的虚拟环境:
[linuxidc@localhost ~/linuxidc_app]$python3.8 -m venv linuxidc_app_venv
激活环境:
[linuxidc@localhost ~/linuxidc_app]$source linuxidc_app_venv/bin/activate
激活后,shell提示符将以环境名称为前缀。 从Python 3.4开始,在创建虚拟环境pip时,默认情况下会安装Python的软件包管理器。
在虚拟环境中,您可以使用pip代替pip3.8,并使用python代替python3.8:
(linuxidc_app_venv) [linuxidc@localhost ~/linuxidc_app]$python -V Python 3.8.1
完成停用环境的工作后,键入deactivate,您将返回到常规shell。
(linuxidc_app_venv) [linuxidc@localhost ~/linuxidc_app]$deactivate
转载于:https://www.linuxidc.com/Linux/2020-02/162296.htm
centos安装python3.8.1_在CentOS 8上编译安装Python 3.8.1相关推荐
- 树莓派安装python3.8_在树莓派(Raspberry Pi)上编译安装更新版本的Python
Raspiban Wheezy上预装的Python3版本是3.2.3,本文将介绍升级到3.4.3的方法. 此文也适用于安装其它版本(比如最新版本)的Python,只要下载时选择特定版本可以了. 我用的 ...
- mysql编译安装指定端口_在CentOS7系统上编译安装MySQL 5.7.13步骤详解
MySQL 5.7主要特性 1.更好的性能 对于多核CPU.固态硬盘.锁有着更好的优化,每秒100W QPS已不再是MySQL的追求,下个版本能否上200W QPS才是用户更关心的. 2.更好的Inn ...
- centos llvm安装_在CentOS上编译安装llvm-3.8.1详细教程
在CentOS上编译安装llvm-3.8.1详细教程 2020/1/11 18:12 1682次 注:CentOS版本是6.8,6.x版本的操作类似 安装需求: [list] [*]Cmake: 3 ...
- CentOS 7上编译安装PHP 8.1及Nginx 配置支持PHP
CentOS 7上编译安装PHP 8.1/及Nginx 配置支持PHP 编译安装 Php[端口:9000] 安装编译环境依赖包 yum -y install gcc gcc-c++ glibc aut ...
- 在 CentOS 8 上编译安装 ISC-DHCP-Server
这篇文章是又一位专业水平非常顶的朋友那里转的,有感兴趣的朋友可以去关注一下 https://www.ddupan.top 在 CentOS 8 上编译安装 ISC-DHCP-Server 应要求,我需 ...
- 在PK体系下的CentOS上编译安装 MySQL 5.7
本文主要介绍如何在 PK 体系下的 CentOS 上编译安装 MySQL 5.7,本文使用的操作系统环境为: CentOS 版本: # cat /etc/redhat-release CentOS L ...
- linux gnuplot yum源,在CentOS上编译安装gnuplot绘图工具
gnuplot是一个命令行的交互式绘图工具.用户通过输入命令,可以逐步设置或修改绘图环境,并以图形描述数据或函数,使我们可以借由图形做更进一步的分析. gnuplot是由Colin Kelly和Tho ...
- 安装python3.6.1_如何安装python3.6.1/
如何在win7下安装Python及配置 1.首先,从搜索python官载适合自己电脑python版本. 2标右击桌面"计算机"择打开菜单栏中的性". 3.WindowsX ...
- 树莓派指定python2编译_在树莓派上编译安装ROS2
最新编译方式已经修改,请参考官网最新文档: ------------------------------------下文已经过时 仅供参考------------------------------- ...
最新文章
- echarts相关设置
- Taro -- 微信小程序登录
- winrar远程代码执行漏洞复现(cve-2018-20250)
- 去除字符串中重复字符
- Codeforces 336C 0-1背包
- 解决Uncaught SyntaxError: Unexpected token var报错问题
- linux 开机启动文件夹,Linux开机启动流程
- Linux的ps aux/ps -ef:风格不同
- [js] 解释下深度优先遍历和广度优先遍历的区别及如何实现
- Linux下编译安装openssl
- springboot listener_Springboot 全套面试提升宝典,为金三银四冲刺
- IDEA中新建项目Static Web 中没有vue.js
- Microsoft Office (2007) Open XML 文件格式
- 【论文笔记】Face Alignment at 3000 FPS via Regressing Local Binary Features
- #深度解析# GAN(生成对抗神经网络)
- 吃货在东京 -- 记那段吃不饱的日子 之四 台场的日本拉面
- python os创建txt文件_Python新建动态命名txt文件
- Python作业:公鸡5元/只,母鸡3元/只,小鸡1元3只。问100元怎么买到100只。
- Proximity模块管理设备距离传感器,可获取当前设备的接近距离信息,通过plus.proximity可获取设备距离传感管理对象
- 用计算机做路由器,用笔记本做无线路由(笔记本电脑当无线路由器用怎么设置)...
热门文章
- 全世android手机,全世界最安全手机:黑莓第二款Android手机DTEK 50
- Raki的读paper小记:OFA: UNIFYING ARCHITECTURES, TASKS, AND MODALITIES THROUGH A SIMPLE Seq2Seq FRAMEWORK
- ACM题目和培养训练!!!
- 数理统计 - 圆环上随机取3个点组成一个锐角三角形的概率
- 网易被裁后,68天吃透这份阿里学长甩我的Android面试笔记,竟让我收到字节跳动和小米offer
- 配置win10系统服务器失败怎么解决,windows10系统重置失败如何解决
- VCS(DVE)调试
- Unity SKFramework框架(二十四)、Avatar Controller 第三人称控制
- 绕过滑块验证码登陆网站的实现
- markdown 表情包大法