deepin20.9操作系统安装Python3.12记录

最近学习python,遇到有的功能网上查到是说python版本更新可能具有新的功能。所以查看到最新的python稳定版已经是python3.12了。于是就想安装,首先是在我的windows电脑上安装,在windows系统上安装是比较简单的。但是在linux系统安装,尤其是在deepin系统安装,网上的文章似乎不多。我参考了B站的视频及深度社区网友以及CSDN网站其他网友的安装,实际操作了,反复安装尝试,发现虽然有些能够安装,但是各有各的小毛病。

一、安装前准备:

1.下载安装包

deepin20.9操作系统安装Python3.12记录_第1张图片

写本文的时候,没想到已经官网升级到python3.12.1了,还是以3.12.0为例吧。

1.1 解压缩方法一

tar -xvf Python-3.12.0.tar.xz

解压缩后就成为Python-3.12.0

1.2解压缩方法二

解压缩用任何方式都可以,不一定非要命令行。在deepin用鼠标右键点击Python-3.12.0.tgz解压缩后成这样:

deepin20.9操作系统安装Python3.12记录_第2张图片

2.安装依赖

以下依赖需先安装,不然安装过程中会报错,以下依赖是经过验证不会安装报错的:

sudo apt-get install build-essential gdb lcov pkg-config libbz2-dev libffi-dev libgdbm-dev libgdbm-compat-dev liblzma-dev libncurses5-dev libreadline-dev libsqlite3-dev libssl-dev lzma lzma-dev tk-dev uuid-dev zlib1g-dev llvm xz-utils

二、安装

1.进入安装目录

我是把文件解压缩到Downloads文件夹,所以就:

#进入安装目录:
Light@Light-PC:~/Downloads/Python-3.12.0$ 

2.配置源码编译后的安装路径

sudo ./configure prefix=/usr/local/python312 --enable-shared --enable-optimizations

需要注意,添加--enable-shared后,安装完成会提示找不到libpython3.12.so.1.0,但是如果不添加,在使用pyinstaller时会有问题,所以这个还是要加上。

3.开始编译

make -j$(nproc)

此处注意,如果前面的安装前依赖有缺,此步会提示某些模块missing,一般会这样提示:

Checked 111 modules (31 built-in, 78 shared, 1 n/a on linux-x86_64, 0 disabled, 1 missing, 0 failed on import) 

但如果在第一步中安装了本文提供的依赖,便不会出现缺模块的问题。

4.开始安装:

sudo make && make install

或者分两步:
sudo make
sudo make install

有网友说要用make altinstall,我没有尝试。

这一步完成后,最后的一段是这样的:

Installing collected packages: pip
  WARNING: The scripts pip3 and pip3.12 are installed in '/usr/local/python312/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.                                                                                                         
Successfully installed pip-23.2.1                                                                             
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 

5.修改默认路径

在上一步的提示之后,开始修改默认路径

sudo vim /etc/profile

在打开的文件末尾加上路径:

deepin20.9操作系统安装Python3.12记录_第3张图片

如果不会用这个vim也没关系,如果能自己找到系统文件/etc/profile中的profile用文本编辑器打开也是可以的。如下图:

deepin20.9操作系统安装Python3.12记录_第4张图片

修改后注销登录,这一步我是参考B站视频里的步骤,不知道为什么这样做。

6.解决libpython3.12.so.1.0问题

执行完第5步后,在终端输入python3会出现以下提示:

Light@Light-PC:~$ python3
python3: error while loading shared libraries: libpython3.12.so.1.0: cannot open shared object file: No such file or directory

修改路径,用以下命令:

sudo vim /etc/ld.so.conf

将路径/usr/local/python312/lib复制进去,如下图:

deepin20.9操作系统安装Python3.12记录_第5张图片

保存退出 后,终端运行:

ldconfig

至此,再次终端输入python3就不会有错误提示了。

7.修改软链接

将/usr/bin/python指向python3.12

sudo ln -snf /usr/local/python312/bin/python3 /usr/bin/python3

8.利用新的python3升级模块

8.1升级pip

python3 -m pip install --upgrade pip

升级后出现以下提示:

WARNING: The scripts pip, pip3 and pip3.12 are installed in '/home/Light/.local/bin' which is not on PATH.                                                                            
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.                                                                     
Successfully installed pip-23.3.1                                                           

[notice] A new release of pip is available: 23.2.1 -> 23.3.1
[notice] To update, run: pip3 install --upgrade pip

进入系统盘-home-主目录,查看

deepin20.9操作系统安装Python3.12记录_第6张图片8.2 修改pip路径

8.2.1打开.bashrc文件。打开方法一:用命令
sudo vim ~/.bashrc
8.2.2打开方法二:也可以直接文本编辑器打开

8.2.3 修改路径

打开的文件末尾

在fi后输入o,换行,输入以下,然后":wq"退出。

export PATH="/home/Light/.local/bin/:$PATH"

注意,此处的路径输入,是上文8.1中pip升级后弹出的提示中路径,复制到这里而已。

8.2.4 运行文件
source ~/.bashrc

8.3用pip3升级setuptools

pip3 install --upgrade setuptools

当当当当,至此,python3.12.0安装好了。

安装完毕后是这样的:

Light@Light-PC:~$ python3
Python 3.12.0 (main, Dec 10 2023, 13:42:22) [GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
Light@Light-PC:~$ python
Python 2.7.16 (default, Oct  9 2022, 08:54:49) 
[GCC 8.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
Light@Light-PC:~$ cd /usr/bin
Light@Light-PC:/usr/bin$ ls -l python*
lrwxrwxrwx 1 root root       7 3月   4  2019 python -> python2
lrwxrwxrwx 1 root root       9 3月   4  2019 python2 -> python2.7
-rwxr-xr-x 1 root root 3423088 10月  9  2022 python2.7
lrwxrwxrwx 1 root root      32 12月 10 14:00 python3 -> /usr/local/python312/bin/python3
-rwxr-xr-x 2 root root 4877856 11月  1  2022 python3.7
-rwxr-xr-x 2 root root 4877856 11月  1  2022 python3.7m
lrwxrwxrwx 1 root root      10 3月  26  2019 python3m -> python3.7m

试用一下:

之前安装pyinstaller后打包dist文件夹中空的,按照以上安装流程后,成功打包。

本人属于初学者,以上都是网上学来的。如果有错误地方,请各位看官不吝指正。

你可能感兴趣的:(python安装,python)