Ubuntu安装Python并配置pip阿里镜像教程

Ubuntu安装Python并配置pip阿里镜像教程

背景

因为要部署yolov8项目到ubuntu系统,但是yolov8要求python版本必须大于3.10,因此ubuntu20.04自带的python3.8不可用,需自行安装python,本教程使用python源码编译式安装python3.12.3,原因是apt下载python无法指定目录,因此本教程主要内容为在Ubuntu20.04桌面版系统上编译并安装Python3.12.3且配置pip阿里镜像

大致步骤

1.官网下载源码包并解压

2.下载Python环境一些核心的库

3.初始化Python并指定路径

4.编译并安装Python

5.配置Python的环境变量

6.测试Python环境

7.配置pip镜像并指定包下载的路径

8.测试pip下载numpy并解决权限问题

9.再次测试下载numpy

步骤1:官网下载源码包并解压

进入python文件服务器官网 https://www.python.org/ftp/python/ ,我这里因为要做yolov8项目,所以我选择3.12.3版本的python,如图

1

然后选择.tar的压缩包进行下载,如图

2

下载后我将其放在了我自己期望的目录下并进行解压,我的目录路径是\home\uav\all_env ,解压后是一个Python-3.12.3的文件夹,里面的内容如图

3

步骤2.下载Python环境一些核心的库

按键 ctlr+alt+T 来到控制面板,首先切换为root用户,命令su root,如图

4

使用cd命令进入才解压的Python目录去,然后执行如下命令将相关的核心库也一并下载(这个一定要执行,不然后续用着用着报错缺少某些库就要重新编译安装Python)

sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev libreadline-dev tk-dev libgdbm-dev libdb-dev libpcap-dev xz-utils libexpat1-dev liblzma-dev libffi-dev libc6-dev

如图

5

步骤3.初始化Python并指定路径

当上面的核心库下载完后,执行如下命令初始化Python并且用prefix指定你期望的安装路径,我这里期望安装的路径为all_env/Python312Env

sudo ./configure --prefix=/home/uav/all_env/Python312Env

如图

6

步骤4:编译并安装Python

先后执行如下两条命令进行编译安装到刚才指定的目录

sudo make
sudo make altinstall

执行完后可以看到在我们指定的目录下已经安装好了,但是由于我们是自己指定的路径,这个的黄色字体提示我们还需要配置环境变量,如图

7

步骤5.配置Python的环境变量

我的用户名为uav,因此来到用户目录下,在该目录下有个隐藏文件名为.bashrc,可按照如图使其显示

8

进入文件在最后加上如下代码并保存,如图

export PATH=/home/uav/all_env/Python312Env/bin:$PATH

51e8219fb9fd0008f75c9b21cccfac3a

步骤6.测试Python环境

其实保存.bashrc后环境变量就已经生效了,可以在控制台测试下我们的Python3.12环境,如图可以看到有显示版本号说明已经生效了

10

步骤7.配置pip镜像并指定包下载的路径

直接在用户目录下创建.pip文件夹,然后cd进入.pip文件夹,创建pip.conf并添加如下内容

[global]
index-url = https://mirrors.aliyun.com/pypi/simple
target = /home/uav/all_env/Python312Env/lib/python3.12/site-packages
[install]
trusted-host = mirrors.aliyun.comsu

如图

11

步骤8.测试pip下载numpy并解决权限问题

我们可以通过pip3.12 install numpy测试下是否能下载包到指定的目录,如图可以看到这里提示权限不够

12

这是因为我们编译安装Python环境时使用了sudo命令【这里我也测试了不用sudo命令去编译安装,是会报错失败的,因为权限不够】,因此需要去将安装的Python环境目录更改为当前用户的权限【这个机制真TM的离谱啊】,解决方案如下:
来到Python环境的上一级目录,首先切换为root用户,然后执行Chown -R uav:uav Python312Env将目录及其子目录的权限和组设置为uav用户,如图

13

步骤9.再次测试下载numpy

然后再切换为uav用户,再次执行pip3.12 install numpy测试是否能下载包到指定目录,如图可以看到成功了

14

结语

至此,Ubuntu安装指定版本Python并配置pip的教程结束

© 版权声明
THE END
喜欢就支持一下吧
分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称

    暂无评论内容