[problem help] 用 sudo apt install python3.12安装后,如何指向3.12?
Tofloor
poster avatar
benshaw
deepin
2024-06-06 19:39
Author

用 sudo apt install python3.12安装后,终端输入python3运行,仍然运行的是3.11。如何指向3.12? 求指导!

Reply Favorite View the author
All Replies
hotime
deepin
2024-06-06 20:01
#1
hotime@Miix4:~$ ls -la /usr/bin | grep python
lrwxrwxrwx  1 root root           24 2023年10月 8日 pdb3.11 -> ../lib/python3.11/pdb.py
lrwxrwxrwx  1 root root           31 2023年 7月 5日 py3versions -> ../share/python3/py3versions.py
lrwxrwxrwx  1 root root            7 2023年 6月13日 python -> python3
lrwxrwxrwx  1 root root           10 2023年 7月 5日 python3 -> python3.11
-rwxr-xr-x  1 root root      6739864 2023年10月 8日 python3.11

从命令 ls -la /usr/bin | grep python的结果中可以看到python相关的命令是怎样软链接的:python指向python3, python3指向python3.11。

当你安装了python3.12后, 你需要删除python3这个软链接, 然后重新创建新的软链接python3指向python3.12

命令如下:

sudo rm -f /usr/bin/python3
sudo ln -s python3.12 /usr/bin/python3

我这个属于笨办法,直接使用楼下neko的方案吧,更灵活。

Reply View the author
neko
deepin
Ecological co-builder
2024-06-06 20:05
#2
sudo update-alternatives --install /usr/local/bin/python3 python3 /usr/bin/python3.12 1
Reply View the author
benshaw
deepin
2024-06-07 10:08
#3
neko
sudo update-alternatives --install /usr/local/bin/python3 python3 /usr/bin/python3.12 1

谢谢各位……

昨晚因为没搞定,把V23RC换回20.9了。还是等正式版吧……

Reply View the author
xia
deepin
2024-06-07 10:36
#4

我是编译安装的,安装的过程用 不用

make install

而是make altinstall

这样新安装的python不会覆盖系统自带的python3链接,然后用,创建软链接(./configure 默认prefix是在/user/local下)

sudo ln -s /usr/local/bin/python3.12 /usr/bin/py312
sudo ln -s /usr/local/bin/pip3.12 /usr/bin/pip

然后用py312 就好了,修改系统自带的python3可能会造成系统一些奇怪的问题,不建议覆盖

Reply View the author