首页 > 系统相关 >CentOS 7.9编译安装Python-3.10.13

CentOS 7.9编译安装Python-3.10.13

时间:2023-09-20 13:33:53浏览次数:48  
标签:bin 13 CentOS Python python usr 3.10 os

一、查看CentOS版本、系统默认gcc版本、Python版本和pip版本:

# cat /etc/redhat-release

CentOS 7.9编译安装Python-3.10.13_python-3.10.13

# gcc --version

CentOS 7.9编译安装Python-3.10.13_CentOS 7.9_02

# python -V

CentOS 7.9编译安装Python-3.10.13_python升级_03

# pip -V

CentOS 7.9编译安装Python-3.10.13_CentOS 7.9_04

二、部署Python-3.10.13:

1、下载Python-3.10.13.tar.xz,Python官网:https://www.python.org/

2、安装编译依赖软件包及包组:

# yum -y groupinstall "Development tools"
# 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 man

3、编译安装Python-3.10.13:

# tar -xf Python-3.10.13.tar.xz -C /usr/src
# cd /usr/src/Python-3.10.13
# ./configure --prefix=/usr/local/python-3.10.13 --enable-shared --enable-profiling --disable-ipv6 --with-pymalloc --with-doc-strings --enable-loadable-sqlite-extensions | tee /tmp/python-3.10.13.out

CentOS 7.9编译安装Python-3.10.13_python升级_05

说明:./configure时不要加--enable-optimizations选项,会报错

# less /tmp/python-3.10.13.out
# make -j 8

CentOS 7.9编译安装Python-3.10.13_CentOS 7.9_06

# make install

CentOS 7.9编译安装Python-3.10.13_python升级_07

4、更改CentOS 7.9默认Python版本为3.10.13:

# which python

CentOS 7.9编译安装Python-3.10.13_CentOS 7.9_08

# mv /usr/bin/python /usr/bin/python-2.7.5
# ln -s /usr/local/python-3.10.13/bin/python3 /usr/bin/python
# ln -s /usr/local/python-3.10.13/bin/pip3 /usr/bin/pip

5、添加至PATH环境变量:

# vim /etc/profile.d/python-3.10.13.sh
export PATH=/usr/local/python-3.10.13/bin:$PATH
# . /etc/profile.d/python-3.10.13.sh
# echo $PATH

CentOS 7.9编译安装Python-3.10.13_python-3.10.13_09

6、配置头文件:

# ln -s /usr/local/python-3.10.13/include /usr/include/python-3.10.13

7、配置库文件:

# echo "/usr/local/python-3.10.13/lib" > /etc/ld.so.conf.d/python-3.10.13.conf
# cat /etc/ld.so.conf.d/python-3.10.13.conf
# ldconfig

8、查看部署后的Python和pip版本:

# python -V

CentOS 7.9编译安装Python-3.10.13_python升级_10

# python3 -V

CentOS 7.9编译安装Python-3.10.13_python升级_11

# pip -V

CentOS 7.9编译安装Python-3.10.13_CentOS 7.9_12

9、写代码测试:

# vim /tmp/test.py
#!/usr/bin/python
import os

# 获取操作系统类型
os_type = os.uname().sysname
print("操作系统类型:",os_type)

# 获取操作系统版本
os_version = os.uname().release
print("操作系统版本:",os_version)

# 获取主机名
hostname = os.uname().nodename
print("主机名:",hostname)

# 获取CPU信息
cpu_info = os.popen('cat /proc/cpuinfo | grep "model name"').read().strip()
print("CPU信息:")
print(cpu_info)

# 获取内存信息
mem_info = os.popen('cat /proc/meminfo | grep "MemTotal"').read().strip()
print("内存信息:")
print(mem_info)

# 获取磁盘使用情况
disk_usage = os.popen('df -h').read().strip()
print("磁盘使用情况:")
print(disk_usage)

# 获取/tmp目录下的文件信息
print("/tmp目录下的文件信息:")
os.system('ls -lh /tmp')
# python /tmp/test.py

CentOS 7.9编译安装Python-3.10.13_python-3.10.13_13

三、将yum中的Python版本修改为系统原来的2.7.5版本:

升级Python后会导致yum无法使用:

# yum -y install htop

CentOS 7.9编译安装Python-3.10.13_python-3.10.13_14

# vim /usr/bin/yum,将第一行的“#!/usr/bin/python”修改为“#!/usr/bin/python-2.7.5”

再次执行安装命令,提示:

CentOS 7.9编译安装Python-3.10.13_CentOS 7.9_15

# vim /usr/libexec/urlgrabber-ext-down,将第一行的“#! /usr/bin/python”修改为“#! /usr/bin/python-2.7.5”

CentOS 7.9编译安装Python-3.10.13_python-3.10.13_16


标签:bin,13,CentOS,Python,python,usr,3.10,os
From: https://blog.51cto.com/qiuyue/7536462

相关文章

  • Python 运算符
    1.算数运算符运算符描述实例+加1+1输出结果:2-减1-1输出结果:0*乘2*2输出结果:4/除10/2输出结果:5//取整9//4输出结果:2%取余9%4输出结果:1**指数2**4输出结果:16()小括号优先运算:(1+2)*2结果:6注意:混合......
  • 软件测试|探索Python中获取最高数值的几种方法
    前言在数据分析、统计和编程领域,经常会遇到需要从一组数值中找出最高数值的情况。Python作为一门功能丰富的编程语言,提供了多种方法来实现这一目标。在本文中,我们将探索几种获取最高数值的方法,帮助大家在不同情况下选择最适合的方法。使用max()内置函数Python内置了max()函数,它......
  • 软件测试|Python中如何控制输出小数点位数
    简介在数据处理、科学计算和金融分析等领域,经常需要对浮点数的输出进行格式化,以控制小数点后的位数。Python提供了多种方法来实现这个目标。在本文中,我们将深入探讨几种指定输出小数点位数的方法,帮助我们在不同场景下选择合适的方式。使用字符串格式化Python的字符串格式化功能非常......
  • 软件测试|Python如何将列表从大到小排序
    简介在编程中,对列表进行排序是一个常见的操作,有时候我们需要将列表按照从大到小的顺序进行排列。Python提供了多种方法来实现这一目标。在本文中,我们将深入探讨几种将列表从大到小排序的方法,帮助您根据不同情况选择最合适的方式。使用sorted()函数Python的sorted()函数可以接收一......
  • vmware虚拟机中的centos设置固定ip
    1、使用桥接模式,确保虚拟机目前可联网因为我们要使用目前的配置,使得目前ip为固定ip,确保ip无冲突 2、查看目前ip配置ipaddrshow #查看ip,找到虚拟机目前联网的网络接口,我的是ens33ipaddrshowens33 #查看,确定inet172.16.200.102/20  ip和子网掩码iproute......
  • 每日一练 | 华为认证真题练习Day113
    1、以下关于OSPF的RouterID描述不正确的是()。(多选)A.OSPF协议正常运行的前提条件是该路由器有RouterIDB.RouterID必须是路由器某接口的IP地址C.必须通过手工配置方式来指定RouterIDD.在同一区域内RouterID必须相同,在不同区城内的RouterID可以不同2、路由器在转发某个数据包......
  • Python异步编程高并发执行爬虫采集,用回调函数解析响应
    一、问题:当发送API请求,读写数据库任务较重时,程序运行效率急剧下降。异步技术是Python编程中对提升性能非常重要的一项技术。在实际应用,经常面临对外发送网络请求,调用外部接口,或者不断更新数据库或文件等操作。这这些操作,通常90%以上时间是在等待,如通过REST,gRPC向服务器发送请......
  • 【Python】pymysql 连接mysql数据库, 执行数据库语句
    1.数据库设置importpymysql#数据库连接配置DB_HOST='127.0.0.1'#ipDB_PORT=3306#端口DB_USER='root'#用户名DB_PASSWD='root'#密码DB_DATABASE='db_1'#数据库名称2.数据库连接#连接数据库conn=pymysql.connect(host=DB_HOS......
  • 解决安装VS2022时,出现未能安装包"Microsoft.VisualCpp.Redist.14,version=14.32.31332
    解决安装VS2022时,出现未能安装包"Microsoft.VisualCpp.Redist.14,version=14.32.31332,chip”=x86"问题描述之前安装过MSSQLServer和VS2022,但是后来又卸载了。现在重装VS2022出现两个报错:无法安装Microsoft.VisualCpp.Redist.14,version=14.32.31332,chip”=x86无法安装Micr......
  • locust:Python 分布式压力测试(带WebUI)
    Locust介绍它采用纯Python实现,是一个分布式用户负载测试的工具。使用基于Requests库的客户端发起请求,使编写脚本大大简化;在模拟并发方面摒弃进程和线程,完全基于时间驱动,采用协程(gevent)提供的非阻塞IO和coroutine来实现网络层的并发请求。因此单台压力机也能产生数千......