Linux系统之编译安装python3

news2024/11/27 18:29:21

Linux系统之编译安装python3

  • 一、python3介绍
    • 1. python3简介
    • 2. python3特点
  • 二、检查本地环境
    • 1. 检查本地操作系统版本
    • 2. 检查内核版本
    • 3. 检查当前python版本
  • 三、安装前准备工作
  • 四、下载python最新版本源码包
    • 1. 访问python官网
    • 2. 创建下载目录
    • 3. 下载python源码包
    • 4. 解压python软件包
  • 五、安装python3
    • 1. 配置安装参数
    • 2. 编译安装python3
    • 3. 配置系统环境变量
    • 4. 查看当前python的版本
  • 六、pip配置工作
    • 1. pip介绍
    • 2. 查看当前pip版本
    • 3. 升级pip版本
    • 4. 修改pip.conf文件
    • 5. 查看已安装的第三⽅模块

一、python3介绍

1. python3简介

Python 3是一种高级编程语言,由Guido van Rossum于2008年发布。它是Python编程语言的最新版本,是Python 2的升级版本。Python 3提供了很多新的功能和改进,使得程序员可以更加快速、简便地编写高质量的代码。

2. python3特点

  • 简单易用:Python 3拥有简洁易读的语法,使得编程变得更加容易和快捷。

  • 面向对象:Python 3是一种完全的面向对象编程语言,它支持类、对象、继承等常见的面向对象编程特性。

  • 多线程:Python 3支持多线程编程,可以实现多任务同时执行,大大提高了程序的效率。

  • 广泛应用:Python 3可以用于各种领域的开发,如Web开发、科学计算、人工智能等。

  • 开源:Python 3是开源的,可以自由使用和修改,具有很高的灵活性和可定制性。

二、检查本地环境

1. 检查本地操作系统版本

检查当前操作系统版本。

[root@jeven ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 

2. 检查内核版本

检查内核版本

[root@jeven ~]# uname -r 
3.10.0-957.el7.x86_64

3. 检查当前python版本

检查当前系统默认安装的python版本

[root@jeven ~]# python -V
Python 2.7.5

三、安装前准备工作

安装python3之前,先安装相关依赖。

yum install -y gcc gcc-c++ zlib zlib-devel libffilibffi-devel openssl openssl-devel pcre pcre-devel yum-utils vim wget tree htop

在这里插入图片描述

四、下载python最新版本源码包

1. 访问python官网

访问python官网:https://www.python.org/

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2. 创建下载目录

创建下载目录

[root@jeven ~]# mkdir -p /data/python
[root@jeven ~]# cd /data/python/

3. 下载python源码包

下载python源码包

 wget https://www.python.org/ftp/python/3.11.3/Python-3.11.3.tgz

在这里插入图片描述

4. 解压python软件包

解压缩源码包

[root@jeven python]# tar -xzf Python-3.11.3.tgz 
[root@jeven python]# ls
Python-3.11.3  Python-3.11.3.tgz

五、安装python3

1. 配置安装参数

配置安装参数

[root@jeven Python-3.11.3]# cd Python-3.11.3/
[root@jeven Python-3.11.3]# ls
aclocal.m4    config.log     config.sub  configure.ac  Grammar  install-sh  LICENSE  Makefile      Makefile.pre.in  Modules  Parser  PCbuild   pyconfig.h     Python      setup.py
config.guess  config.status  configure   Doc           Include  Lib         Mac      Makefile.pre  Misc             Objects  PC      Programs  pyconfig.h.in  README.rst  Tools

./configure --prefix=/usr/local/python311/

2. 编译安装python3

编译安装python3

make && make install

在这里插入图片描述

3. 配置系统环境变量

配置系统环境变量

[root@jeven Python-3.11.3]# cat /etc/profile.d/python311.sh 
export PATH="/usr/local/python311/bin:${PATH}"

使环境变量⽣效

source /etc/profile

4. 查看当前python的版本

查看当前python的版本

[root@jeven Python-3.11.3]# python3 -V
Python 3.11.3

六、pip配置工作

1. pip介绍

pip是一个Python包管理器,用于安装、升级、卸载Python包(即模块或库)。它能够自动处理依赖关系,并从Python Package Index (PyPI) 下载并安装包。简而言之,pip是一个用于Python包管理的工具。

2. 查看当前pip版本

查看pip的版本

[root@jeven Python-3.11.3]# pip -V
pip 23.1.2 from /usr/local/python311/lib/python3.11/site-packages/pip (python 3.11)

3. 升级pip版本

升级pip版本

[root@jeven Python-3.11.3]# python3 -m pip install --upgrade pip
Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Requirement already satisfied: pip in /usr/local/python311/lib/python3.11/site-packages (22.3.1)
Collecting pip
  Downloading http://mirrors.aliyun.com/pypi/packages/08/e3/57d4c24a050aa0bcca46b2920bff40847db79535dc78141eb83581a52eb8/pip-23.1.2-py3-none-any.whl (2.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 4.4 MB/s eta 0:00:00
Installing collected packages: pip
  Attempting uninstall: pip
    Found existing installation: pip 22.3.1
    Uninstalling pip-22.3.1:
      Successfully uninstalled pip-22.3.1
Successfully installed pip-23.1.2
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

4. 修改pip.conf文件

修改pip.conf文件

mkdir -p ~/.pip
vim ~/.pip/pip.conf
[root@jeven Python-3.11.3]# cat ~/.pip/pip.conf 
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
 
[install]
trusted-host = mirrors.aliyun.com

5. 查看已安装的第三⽅模块

查看已安装的第三⽅模块

[root@jeven Python-3.11.3]# python3 -m pip list
Package    Version
---------- -------
pip        23.1.2
setuptools 65.5.0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/573176.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Git业务实践记录

您好,如果喜欢我的文章,可以关注我的公众号「量子前端」,将不定期关注推送前端好文~ 场景描述 最近在开发一个新的功能,和往常一样先建了一个分支进行开发,开发到周期60%的时候,后端临时通知需要将大功能…

思维导图到底有多少种?

思维导图是一种非常实用的工具,它可以帮助我们更好地组织和表达我们的思想。在日常生活和工作中,我们可以使用各种不同类型的思维导图来解决不同的问题。下面,我将介绍一些常见的思维导图类型以及如何使用ProcessOn思维导图软件制作思维导图。…

前端学习--Vue(5)

一、动态组件 动态切换组件的显示与隐藏 1.1 <component>组件 <!-- component是vue内置的标签占位符 is中规定标签名 --><component :is"comName"></component> 动态组件在被展示的时候被创建&#xff0c;隐藏的时候被销毁 如果想要组件…

Day1:Windows消息循环机制

先区分几个概念 系统&#xff1a;特指Windwos操作系统 应用程序&#xff1a;指一个程序&#xff0c;比如QQ&#xff0c;微信等 窗口&#xff1a;每个应用程序都 可以拥有窗口&#xff0c;而且可以有多个&#xff0c;但一般会有一个主窗口。 消息&#xff1a;window系统定义…

【系统集成项目管理工程师】计算题专题二

七、进度网络计算题 1、单代号网络图 六标时图 正推取大&#xff08;红色&#xff09;&#xff1b;反推取小&#xff08;绿色&#xff09; 关键路径&#xff1a;ACDE&#xff08;关键路径下的活动总浮动时间都是 0&#xff09; 浮动时间&#xff08;总时长&#xff09;&…

《Spring Guides系列学习》guide31 - guide34 及中期简单回顾

要想全面快速学习Spring的内容&#xff0c;最好的方法肯定是先去Spring官网去查阅文档&#xff0c;在Spring官网中找到了适合新手了解的官网Guides&#xff0c;一共68篇&#xff0c;打算全部过一遍&#xff0c;能尽量全面的了解Spring框架的每个特性和功能。 接着上篇看过的gu…

Scrum敏捷迭代规划和执行

Sprint Backlog看板 迭代工作的开展是围绕Sprint Backlog展开的&#xff0c;在Leangoo中&#xff0c;我们需要为每个迭代创建一个Sprint Backlog看板。Sprint Backlog&#xff08;迭代&#xff09;看板&#xff0c;用于管理当前Sprint的需求和开发任务&#xff0c;可视化展示每…

Cesium教程(七):加载自定义影像数据

GIS开发中经常需要调用本地或供应方发布的影像数据,加载独立的场景,此时可以借助GeoServer发 布自定义影像数据。 geoserver下载地址:geoserver下载 1、geoserver安装 1.1 安装方式1(推荐) 要求已安装tomcat:下载 Web Archive 版本的GeoServer,下载完毕解压,目 录如…

【JavaSE】Java基础语法(十九):接口新特性

文章目录 1. 接口组成更新概述2. 接口中默认方法3. 接口中静态方法4. 接口中私有方法 1. 接口组成更新概述 常量&#xff1a;接口可以定义全局常量&#xff0c;使用关键字public static final修饰。 抽象方法&#xff1a;接口中可以定义抽象方法&#xff0c;使用关键字public…

零基础如何入门网络安全?2023年专业学习路线看这篇就够了

前景 很多零基础朋友开始将网络安全作为发展的大方向&#xff0c;的确&#xff0c;现如今网络安全已经成为了一个新的就业风口&#xff0c;不仅大学里开设相关学科&#xff0c;连市场上也开始大量招人。 那么网络安全到底前景如何&#xff1f;大致从市场规模、政策扶持、就业…

汽车以太网通道和相关组件的测试

随着车载网络的发展&#xff0c;已经出现了CAN、LIN、FlexRay、MOST等成熟的协议&#xff0c;而基于LVDS/USB技术的链路传输模式也得到了广泛的应用。然而&#xff0c;面对不断提高的摄像头、显示器和不同传感器系统共享的更复杂信息分辨率&#xff0c;就需要更高的传输速度。 …

企业内容管理入门指南:从概念到实践,提升协作效率和质量

在现代企业管理中&#xff0c;存在一种容易被忽视但又极为重要的管理理念——企业内容管理。由于“企业内容”这一概念过于抽象&#xff0c;大家对它可能还比较模糊。所以&#xff0c;今天我们来聊聊企业内容管理。 在开始之前&#xff0c;对企业内容做一个简明的介绍&#x…

API对接是什么意思,技术分享

在计算机科学中&#xff0c;应用程序接口&#xff08;API&#xff09;是一种程序编程接口&#xff0c;定义了应用程序之间或应用程序和操作系统之间的通信方式。API对接就是在不同的应用程序之间实现数据交换和信息传输的过程。当两个不同的应用程序需要共享数据时&#xff0c;…

黄河千年清一回与人类健康

黄河千年清一回奏响一曲曲让人类走进幸福新时代的壮丽凯歌。疫情之后的首届全世界健康产业发展大会 5 月28 日上午 9 时在中国首都北京召开 The Yellow River has played a magnificent song of triumph in the millennium, ushering humanity into a new era of happiness. T…

常见通信名词的解释

在通信接口的介绍中&#xff0c;难免见到全双工/半双工/单工、同步/异步等这些名词。今天就专门来介绍一下这些名词。 1. 什么是全双工/半双工/单工 数据通信中&#xff0c;数据在线路上的传送方式可以分为单工通信、半双工通信和全双工通信三种。 单工通信&#xff1a;是指…

关于原生feign发起请求时,参数注解的相关问题

先说结论&#xff1a; POST请求必须指定请求头&#xff0c;body参数用RequestBody或者Param&#xff08;需要一个一个写&#xff09;。 GET请求&#xff0c;传参只能用QueryMap&#xff0c;后边变量是Map形式&#xff0c;哪怕是一个参数也必须放到map里边。如果是路径变量&…

MySql基础学习(1)

MySql基础学习 一、数据库1.1 什么是数据库1.2 MySql的启动与停止1.3 MySql数据模型 二、SQL2.1 SQL通用语法2.2 SQL分类2.2.1 数据类型2.2.2 DDL使用方法2.2.3 、表操作-修改&删除DDL总结 2.3 DML2.3.1 DML添加数据2.3.2 DML---修改数据2.3.3 DML---删除数据DML总结 2.4 D…

【C++从入门到放弃】vector深度剖析及模拟实现

&#x1f9d1;‍&#x1f4bb;作者&#xff1a; 情话0.0 &#x1f4dd;专栏&#xff1a;《C从入门到放弃》 &#x1f466;个人简介&#xff1a;一名双非编程菜鸟&#xff0c;在这里分享自己的编程学习笔记&#xff0c;欢迎大家的指正与点赞&#xff0c;谢谢&#xff01; vecto…

当二叉树遇上递归:如何判断单值二叉树?

本篇博客会讲解力扣“965. 单值二叉树”的解题思路&#xff0c;这是题目链接。 先来审题&#xff1a; 以下是输出示例&#xff1a; 以下是提示&#xff1a; 本题非常适合使用递归实现。分以下情况讨论&#xff1a; 若是空树&#xff0c;则符合单值二叉树的性质。若非空&am…

[Nacos] Nacos Server处理注销请求 (七)

文章目录 1.InstanceController.deregister()1.1 从请求中获取要操作的instance1.2 删除instance 1.InstanceController.deregister() 从请求中获取要操作的instance从注册表中获取service从获取的service中删除instance 1.1 从请求中获取要操作的instance private Instance g…