因为工作需要,需要在unbtun中安装python,系统虽然自带了2.7版本,但是太老了,所以安装了3.8,虽然确实不难,但是看网上的教程也确实踩了很多坑,主要是对很多命令的用法不了解 ,文中所有命令都是我执行过的,希望能帮后面新手的少走弯路
1、下载安装包(默认保存在当前目录下):
wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tgz
注意:直接下载好像会报错
我的解决方法:更新一下源地址
apt-get update
用来指定更新 /etc/apt/sources.list 和 /etc/apt/sources.list.d 所列出 的源地址,这样能够保证获得最新的安装包。
解压:
tar -zxvf Python-3.8.1.tgz
2、编译
使用 make 工具进行编译:
2.1需要进入安装包的解压目录下,一般默认在当前下载目录下(如果不正确,先查找具体的解压位置)
./configure --prefix=/usr/local/python3.8.1
注意:该命令依赖于configure目录,解压以后就会有,我的第一个踩坑点(不在当前目录老是报错)
这里的–prefix=/usr/local/python3.8.1用于指定安装目录(建议指定)。如果不指定,就会使用默认的安装目录。我是在local目录下新建了安装目录python3.8.1
2.2请注意make貌似需要单独安装
make && make install
安装完成后进入安装目录下输入python3,如图,说明安装成功
3、修改默认版本
虽然现在python已经安装成功,但是如果系统自带了老版本,那每次打开的还是老版本,所以要修改默认版本
3.1 添加一个新的alternatives组
update-alternatives --install
:这个链接组的名称,如python;
如/usr/local/python3.8.1/bin/python3;
: 优先级,数值越大,优先级越高;
完整命令如下(第二个踩坑点,因为对命令的不了解,瞎改一直失败,所以把完成的命令解释贴上):
update-alternatives --install /usr/bin/python python /usr/local/python3.8.1/bin/python3 200
执行后输入命令查询python版本:
python --version
4、配置环境变量(不配置环境变量不能使用安装版本的pip)
注意:该配置方式会将默认的pip指向改为当前版本的pip
4.1、echo $PATH查看环境变量
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
4.2、编辑这个文件,在尾部追加python的安装位置
vim /etc/profile
写入
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/python36/bin
保存退出
4.3运行一下这个/etc/profile 使得生效
source /etc/profile
4.4 which pip查看pip指向