CentOS7 安装 Python 3.9.0[通俗易懂]

CentOS7 安装 Python 3.9.0[通俗易懂]文章目录1.安装编译相关工具2.创建Python文件夹下载安装包3.编译安装4.创建软连接5.验证1.安装编译相关工具安装开发库yum-ygroupinstall”Developmenttools”安装依赖环境yum-yinstallzlibzlib-develbzip2-developenssl-develncurses-develsqlite-develreadline-develtk-develgdbm-develdb4-devel

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

1. 安装编译相关工具

  • 安装开发库
yum -y groupinstall "Development tools"
  • 安装依赖环境
yum -y install zlib zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
  • 安装 libffi-devel
yum -y install libffi-devel

2. 创建 Python 文件夹下载安装包

  • 创建存放的文件夹
mkdir /usr/local/python3 
  • 下载 Python3.9 安装包
cd /usr/local/python3
wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz
  • 解压
tar xf Python-3.9.0.tgz

3. 编译安装

  • 进入 Python-3.9.0 文件夹
cd /usr/local/python3/Python-3.9.0
  • 生成 makefile 文件
./configure prefix=/usr/local/python3 --with-ensurepip=install
  • 编译安装
make -j 4 && make install

4. 创建软连接

  • 将原有 python2 链接备份
mv /usr/bin/python /usr/bin/python.bak
  • 添加 python3 的软链接
ln -s /usr/local/python3/bin/python3.9 /usr/bin/python
  • 查看 python 版本
python -V
  • 更改 yum 脚本的 python 依赖,因为其要用到 python2 才能执行,否则会导致 yum 不能正常使用
vim /usr/bin/yum
原:#!/usr/bin/python 改:#!/usr/bin/python2

vim /usr/libexec/urlgrabber-ext-down
原:#! /usr/bin/python 改:#! /usr/bin/python2

5. 验证

  • 检测 python2
python2
  • 检测 python3
python

6. 脚本一键安装

#!/bin/bash
echo -e "\033[32m安装开发库,wait......\033[0m"
yum -y groupinstall "Development tools" &> /dev/null
echo ' '
echo -e "\033[32m安装依赖环境,wait......\033[0m"
yum -y install zlib zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel wget &> /dev/null
echo ' '
echo -e "\033[32m安装 libffi-devel,wait......\033[0m"
yum -y install libffi-devel &> /dev/null
echo ' '
mkdir -p /usr/local/python3
echo -e "\033[32m下载 python3.9.0 源码包,wait......\033[0m"
wget http://101.34.22.188/python/Python-3.9.0.tgz -P /usr/local/python3 &> /dev/null
echo ' '
echo -e "\033[32m解压源码包,wait......\033[0m"
tar xf /usr/local/python3/Python-3.9.0.tgz -C /usr/local/python3 &> /dev/null
echo ' '
echo -e "\033[32m编译安装,wait......\033[0m"
cd /usr/local/python3/Python-3.9.0
./configure prefix=/usr/local/python3 --with-ensurepip=install &> /dev/null
sleep 5
make &> /dev/null
make install &> /dev/null
sleep 5
echo ' '
echo -e "\033[32m创建软连接,wait......\033[0m"
mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/python3/bin/python3.9 /usr/bin/python
echo ' '
echo -e "\033[32m更改 yum 脚本的 python 依赖,wait......\033[0m"
sed -i 's/\#\!\/usr\/bin\/python/\#\!\/usr\/bin\/python2/' /usr/bin/yum
sed -i 's/\#\! \/usr\/bin\/python/\#\! \/usr\/bin\/python2/' /usr/libexec/urlgrabber-ext-down
echo ' '
echo -e "\033[33mPython3.9.0 安装成功\033[0m"
echo -e "\033[32mPython3:python\033[0m"
echo -e "\033[32mPython2:python2\033[0m"
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189833.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • prepareCall()运行存储过程

    prepareCall()运行存储过程

    2021年12月15日
    44
  • Django(69)最好用的过滤器插件Django-filter[通俗易懂]

    Django(69)最好用的过滤器插件Django-filter[通俗易懂]前言如果需要满足前端各种筛选条件查询,我们使用drf自带的会比较麻烦,比如查询书名中包含“国”字,日期大于“2020-1-1”等等诸如此类的请求,Django-filter这个组件就是要解决这样的问

    2022年8月7日
    5
  • cglib代理[通俗易懂]

    cglib代理[通俗易懂]cglib代理​ 在此之前,我们学习了JDK动态代理,而JDK动态代理有一定的局限性,因为使用JDK动态代理时,被代理类必须实现接口,然后动态代理生成的代理类同时实现该接口实现代理模式,但在特定情况下没办法让被代理类实现接口,那么此时我们就需要使用cglib代理。代理模式的三要素两个成员:被代理对象、执行者(类似于Spring中切面的概念)使用场景:当某件事情不方便自己做,但是必须要做时…

    2022年5月6日
    47
  • ER图转关系模型_实体关系图变关系模型

    ER图转关系模型_实体关系图变关系模型(1)实体类型的转换将每个实体类型转换成一个关系模式,实体的属性即为关系的属性,实体标识符即为关系的键。(2)联系类型的转换实体间的关系是1对1在实体类型转换成两个关系模式中的任意一个关系模式的属性中加入另一个关系模式的键和联系类型的属性。实体间的联系是1对N则在N端实体类型转换成的关系模式中加入1端实体类主键。如实体间的联系是M对N单独将联系类型也转换成关系模式。将M和N端的主键都加进去。示例:该ER图转换为关系模型商店和职工是一对多关系,一个商店有多个

    2025年6月5日
    4
  • rabbitmq高可用集群搭建_mongodb高可用架构

    rabbitmq高可用集群搭建_mongodb高可用架构RabbitMQ高可用集群搭建1集群简介1.1集群架构​ 当单台RabbitMQ服务器的处理消息的能力达到瓶颈时,此时可以通过RabbitMQ集群来进行扩展,从而达到提升吞吐量的目的。RabbitMQ集群是一个或多个节点的逻辑分组,集群中的每个节点都是对等的,每个节点共享所有的用户,虚拟主机,队列,交换器,绑定关系,运行时参数和其他分布式状态等信息。一个高可用,负载均衡的RabbitMQ集群架构应类似下图:这里对上面的集群架构做一下解释说明:​ 首先一个基本的Rabbi

    2025年10月21日
    4
  • 迎接平价时代 光伏逆变器行业的演进和格局「建议收藏」

    迎接平价时代 光伏逆变器行业的演进和格局

    2022年3月4日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号