在 repo init 和 repo sync 时,需要 python3.6+,在编译 android 源码时,又需要 Python2.7,所以需要系统中同时存在 Python 的 2+和 3+版本。
(1)安装 Python2+版本:
在 Ubuntu 中会自带,不需要再次安装。
(2)安装 Python3.6+版本:
下载 Python3+源代码:
Python 官方下载地址:https://www.python.org/downloads/
解压源码包:tar -zxvf Python-3.8.5.tgz
安装编译源码的依赖库:sudo apt install zlibc zlib1g-dev
./configure --prefix=/usr/local
3)切换 Python2+和 Python3+版本:
怎样能快速的切换 Python2+和 Python3+呢,可以使用如下方式配置:
使用 update-alternatives 命令处理 Linux 系统中软件版本的切换,使其多版本共存。
向系统注册 python3.8.2:sudo update-alternatives --install /usr/bin/python python /usr/local/bin/python3.8 2
向系统注册 python2.7:sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 10
查看 python 所有配置:sudo update-alternatives --display python
切换 python 的配置:sudo update-alternatives --config python
问题 1:
当出现 marshal data too short 时,说明当前系统使用的版本号有问题,需要切换版本(使用上面命令即可):
如果切换版本后,再执行 repo sync 后仍然报错,可以删掉 python 生成的文件后再重新执行:rm -rf __pycache__