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

CentOS 7.9编译安装Python-3.10.13

时间:2024-04-16 10:44:33浏览次数:27  
标签:bin 13 CentOS Python python usr 3.10

目录

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

cat /etc/redhat-release
gcc --version
python -V
pip -V

部署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
  1. 编译安装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
less /tmp/python-3.10.13.out
make -j 8
make install
  1. 更改CentOS 7.9默认Python版本为3.10.13
which python
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
  1. 添加至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
  1. 配置头文件
ln -s /usr/local/python-3.10.13/include /usr/include/python-3.10.13
  1. 配置库文件
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
  1. 查看部署后的Python和pip版本
python -V
python3 -V
pip -V

测试

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

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

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

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

标签:bin,13,CentOS,Python,python,usr,3.10
From: https://www.cnblogs.com/thankcat/p/18137618

相关文章

  • 213. 打家劫舍 ll
    题目链接:状态划分:考虑是否偷\(\rmnums[0]\)若偷\(\rmnums[0]\),则\(\rmnums[1]\)和\(\rmnums[n-1]\)不能偷,问题变为从\(\rmnums[2]\)到\(\rmnums[n-2]\)的非环形版本,可直接调用198题的代码若不偷\(\rmnums[0]\),问题变为从\(\rmnums[1]\)到\(\rmnum......
  • python制作罗盘时钟
    背景图importsysimportmathimportpygamefromdatetimeimportdatetimefrompygameimportdisplay,image,font,transform#创建罗盘时钟的窗口defcreateWindow():pygame.init()screen=display.set_mode((800,700),pygame.RESIZABLE)display.s......
  • python 序列类型 元组
    元组定义元组是不可变序列,通常用于储存异构数据的多项集(例如由enumerate()内置函数所产生的二元组)。元组也被用于需要同构数据的不可变序列的情况(例如允许存储到set或dict的实例)。元组是Python中的一种数据结构,类似于列表,但是元组是不可变的,意味着一旦创建,元组内的元素......
  • Python中两种网络编程方式:Socket和HTTP协议
    本文分享自华为云社区《Python网络编程实践从Socket到HTTP协议的探索与实现》,作者:柠檬味拥抱。在当今互联网时代,网络编程是程序员不可或缺的一项技能。Python作为一种高级编程语言,提供了丰富的网络编程库,使得开发者能够轻松地实现各种网络应用。本文将介绍Python中两种主要的网络......
  • 19、python 脚本
    1.python安装及配置下载地址python2和python3共存安装2.python可视化importturtleturtle.pensize(2)#画一个小圆turtle.circle(10)turtle.circle(40)turtle.circle(80)turtle.circle(160)工具:pythonIDE:pycharmhttps://pan.baidu.com/s/1s_bkgDT0QxNTQY07L......
  • python (63):dataclasses 简单示例
    dataclasses简单示例:importtransformersfromdataclassesimportdataclass,fieldimportargparse@dataclassclassPerson():age:int=field(default=10)Name:str=field(default="Tom")high:int=field(default=185,......
  • python基础-函数(lambda表达式、函数作参数、内置函数、推导式)和pip
    函数进阶今日概要:函数名就是一个变量(扩展)匿名函数(lambda表达式)重点内置函数——python内置函数推导式(一行代码生成数据)1.函数名就是变量deffunc():passv1=funcv1()func()defregister():...deflogin():...def......
  • Python迭代器与生成器
    一、迭代器和生成器的定义可迭代对象并不是指某一个数据类型,而是特指存储了元素的一个容器对象。这里的容器对象可以具象为:列表、字典、元组、字符串、range都算是一个"容器"。可迭代对象有个方法叫_iter_()方法,翻译过来叫做迭代。纯可迭代对象的内部数据"所见即所得",可迭代的数......
  • 5.CentOS-7-Minimal 安装KubernetesV1.23.17&DockerV20.10.23
    1.环境准备主节点IP:192.168.254.130node1IP:192.168.254.131node2IP:192.168.254.132OSversion:CentOS7miniCPUArchitecture:x86_64/amd64K8sversion:v1.23.17Dockerversion:20.10.232.安装前准备#安装依赖yuminstall-ycurlwgetsystemdbash-completi......
  • 20211314实验二-密码引擎-3-sdf接口
    任务详情两人一组完成下面任务分析代码接口和智能钥匙的接口的异同编译运行附件中代码,提交运行结果截图修改test.c完成包含小组内成员的学号姓名的文件的sm3hash运算,sm4加密解密,提交代码和运行结果截图。完成完成包含小组内成员的学号姓名的文件的签名验签名,提交代码和运行......