ubuntu 安装python3.7 以及安装pip3 出现Command '('lsb_release', '-a')' returned non-zero exit status 1问题解决

最近因为电脑重装,东西全没了,总计一下最近重装环境的过程。
如果没有安装包,请下载:

wget http://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz

此链接为python3.7 ,其他版本自行选择。

先安装一些依赖的包:

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

接下来依次解压,编译,安装:

tar -zxvf Python-3.7.0.tgz
cd Python-3.7.0/
sudo ./configure --with-ssl --prefix=/usr/local/python3
sudo make
sudo make install

–prefix=/usr/local/python3 说明:此路径相当于指定安装的路径,如果省略会安装到系统的默认路径。

因为我指定了安装的路径,所以,在这里建立软链:

sudo ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
sudo ln -s /usr/local/python3/bin/pip3 /usr/bin/pip37

如果不成功,可能使python3已经存在了,sudo rm python3 或者 换一个名字,比如python37

这个时候运行pip3 时出现了问题:
subprocess.CalledProcessError: Command ‘(‘lsb_release’, ‘-a’)’ returned non-zero exit status 1.

我搜到的都是说删除一个东西,原因是什么也不是太懂,反正用:

sudo rm /usr/bin/lsb_release

可以解决问题。

如pip无效

使用如下命令

sudo python -m pip install --upgrade --force-reinstall pip

3、看是否安装成功

①看你 python/bin 里有没有 pip 和 pip3 的py脚本 :
在这里插入图片描述
看 pip 的版本信息 ,可以看到最后的括号里是绑定到的版本。如果想使用方便一些,可以创建软连接

② 先用 " pip3 模块名 " 安装一个模块,然后用 " pip3 show 模块名 "来查看模块信息和安装位置。通过安装位置可以看出 pip 是否绑定到了你想要绑定的python版本。
ubuntu 安装python3.7 以及安装pip3 出现Command '('lsb_release', '-a')' returned non-zero exit status 1问题解决_第1张图片

创建软连接
若python3.7安装时,执行的是./configure,则:

mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/bin/python3 /usr/bin/python
mv /usr/bin/pip /usr/bin/pip.bak
ln -s /usr/local/bin/pip3 /usr/bin/pip

若python3.7安装时,执行的是./configure --prefix=/usr/local/python3,则为:

mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python
mv /usr/bin/pip /usr/bin/pip.bak
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

你可能感兴趣的:(环境搭建)