最近玩香橙派 Orange Pi Zero,需要在上面安装Python3环境,并且需要使用pip安装一些类库。使用的是ARMBian官方提供的系统,Ubuntu 18.04。在使用安装pip后使用的时候提示了如下错误
ImportError: cannot import name 'sysconfig'
在经过各种尝试,安装python3-dev等各种方式均安装不上,最后发现是apt源的问题。之前由于对Ubuntu不熟,在论坛上随便选择别人发的的arm的apt源,我使用的是Ubuntu 18.04,代号为bionic,论坛其他人发的是Xenial源,所以导致了这些问题。
首先使用
lsb_release -a
命令查看当前的代号,便于获取正确的版本代号。输出如下:
root@orangepizero:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.2 LTS
Release: 18.04
Codename: bionic
Codename一行为当前系统的代号,所以修改/etc/apt/source.list文件内容为(这个源为中科大的apt源,可根据自身情况自行更改):
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-proposed main multiverse restricted universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-proposed main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
重点:注意其中的bionic为代号名称。如果系统为其他版本,每条记录对应的代号应该修改为当前系统所匹配的名称。否则会出现版本不匹配的问题。
修改完成后,执行
apt update
命令更新缓存,然后重新使用apt-get命令安装pip3。
apt-get install python3-pip
如果没解决,使用下方命令。
wget https://bootstrap.pypa.io/ez_setup.py
python3.8 ez_setup.py
关于apt源中相关参数的解释(https://askubuntu.com/questions/401941):
main:完全的自由软件
restricted:不完全的自由软件
universe:官方不提供支持与补丁,靠社区支持
muitiverse:非自由软件,完全不提供支持和补丁
security:仅修复漏洞,并且尽可能少的改变软件包的行为。低风险。
backports:backports 的团队则认为最好的更新策略是 security 策略加上新版本的软件(包括候选版本的)。但不会由Ubuntu security team审查和更新。
update:修复严重但不影响系统安全运行的漏洞,这类补丁在经过QA人员记录和验证后才提供,和security那类一样低风险。
proposed:update类的测试部分,仅建议提供测试和反馈的人进行安装。
本文详细介绍了如何解决在Ubuntu18.04系统上使用Python3环境时,pip安装第三方库时遇到的ImportError错误。通过正确设置apt源,确保系统代号与apt源匹配,从而解决了版本冲突问题。

1096

被折叠的 条评论
为什么被折叠?



