有时候编译安卓或者SDK代码,如果报错,表示 Python 的替代版本尚未被update-alternatives 命令识别,此时需要切换到对应的版本才能正常编译。比如我在编译内核的时候出现了以下报错:
c
CC security/selinux/netif.o
CC net/netfilter/core.o
CC lib/percpu_ida.o
CC net/llc/llc_input.o
CC drivers/base/driver.o
CC net/netfilter/nf_log.o
CC net/netfilter/nf_queue.o
Traceback (most recent call last):^C
Traceback (most recent call last):
File "./scripts/gcc-wrapper.py", line 107, in <module>
File "./scripts/gcc-wrapper.py", line 107, in <module>
Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
File "./scripts/gcc-wrapper.py", line 107, in <module>
File "./scripts/gcc-wrapper.py", line 107, in <module>
Traceback (most recent call last):
Traceback (most recent call last):
File "./scripts/gcc-wrapper.py", line 107, in <module>
Traceback (most recent call last):
status = run_gcc()
File "./scripts/gcc-wrapper.py", line 107, in <module>
File "./scripts/gcc-wrapper.py", line 107, in <module>
File "./scripts/gcc-wrapper.py", line 91, in run_gcc
Traceback (most recent call last):
Traceback (most recent call last):
File "./scripts/gcc-wrapper.py", line 107, in <module>
status = run_gcc()
status = run_gcc()
File "./scripts/gcc-wrapper.py", line 91, in run_gcc
Traceback (most recent call last):
File "./scripts/gcc-wrapper.py", line 91, in run_gcc
status = run_gcc()
File "./scripts/gcc-wrapper.py", line 107, in <module>
status = run_gcc()
File "./scripts/gcc-wrapper.py", line 91, in run_gcc
File "./scripts/gcc-wrapper.py", line 91, in run_gcc
status = run_gcc()
目前常用的python版本是3.8和2.7版本,可以通过 python --version 命令查看你当前的系统使用是哪个版本。
c
caizd@drivers:~$ python --version
Python 2.7.17
sudo update-alternatives --list python 查看当前安装的所有Python版本:
c
caizd@drivers:~/rk3399_linux/rk3399_linux$ sudo update-alternatives --list python
/usr/bin/python2.7
/usr/bin/python3.8
如果出现报错表示 Python 的替代版本尚未被update-alternatives 命令识别到,此时需要执行命令安装一下。输入注意后面的1、2序号
c
update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
update-alternatives --install /usr/bin/python python /usr/bin/python3.8 2
如果要切换python版本,使用 update-alternatives --config python命令,然后输入对应的数字,选择版本即可。
c
caizd@drivers:~$ update-alternatives --config python
There are 2 choices for the alternative python (providing /usr/bin/python).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/bin/python2.7 1 auto mode
* 1 /usr/bin/python2.7 1 manual mode
2 /usr/bin/python3.8 1 manual mode
Press <enter> to keep the current choice[*], or type selection number: 1