在同一个ubunu系统上安装和配置两套python3.6和python3.8环境

本文并没有使用anacond来做这个事情。

在一个系统中使用两套python3+环境的基本要求是两者不能相互冲突,所以,我选择用系统自带的update-alternatives命令行来控制。但只控制python显然是不行的,与其配套的pip也需要管理起来才行。

我的系统自带的python版本是3.8.9,先从python官网下载一个python3.6,.9,然后解压缩,按照如下命令安装

./configure
make test
make install

默认会将python3.6.9和pip3.6安装到/usr/local/bin

而python3.8.9和pip3.8则在/usr/bin

先设置python3

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3  0 #  将python3.8 装载在/usr/bin/python 通过别名python来管理,优先级为0
sudo update-alternatives --install /usr/bin/python python /usr/local/python3 1 # 将python3.6装载在/usr/bin/python 通过别名python来管理,优先级为1

切换版本时运行

sudo update-alternatives --config python #向系统要求切换别名为python的版本

然后输入序号选择使用哪个python版本,每次切换,系统都会把对应的python版本映射到/usr/bin/python,之后再使用python的话,就是我们切换的python版本了。

同样的方法,我们来设置pip 

sudo update-alternatives --install /usr/bin/pip-sxf pip /usr/bin/pip3  0 #  将pip3.8 装载在/usr/bin/pip-sxf 通过别名pip来管理,优先级为0
sudo update-alternatives --install /usr/bin/pip-sxf pip /usr/local/pip3 1 # 将pip3.6 装载在/usr/bin/pip-sxf 通过别名pip来管理,优先级为1

切换版本时运行

sudo update-alternatives --config pip#向系统要求切换别名为pip的版本     

然后使用pip-sxf来安装对应的依赖包

就这样,两套环境完全分离开了,值得注意的是,python和pip一定不要选岔了,选岔就乱套。

 

posted @ 2023-08-04 14:39  长尾景虎  阅读(170)  评论(0编辑  收藏  举报