1. 环境介绍
硬件:STM32MP157,使用的是野火出的开发板。
软件:Debian ARM 架构制作的 Linux 发行版,版本信息如下:
-
Linux发行版本:Debian GNU/Linux 10
-
内核版本:4.19.94
2. Python 简介
对于 Python 是什么,此处简要概括如下:
-
Python 是一种跨平台的解析型编程语言
-
Python 易学、易用、功能强大,被大量应用在 AI、数据处理、编程教育中
-
大量的开发者提供了各种 Python 代码库,其他人可以使用这些库轻松开发自己的程序
3. 安装python3环境
3.1 使用 apt 命令安装
1)先确认是否安装了python3
python3 --versionpip3 --version
输入上面两条命令,查看是否有输出python的版本信息,如果没有那么说明还没有安装python环境。
2)安装python3
安装之前,请先确认自己的板卡是否能联网。可以ping百度的网址:
ping www.baidu.com
如下图:
虽然延迟有点高,但是可以确定确实能联网。
然后运行如下命令:
# 在板卡上执行如下命令,需要联网
# 第一次使用apt需要更新
sudo apt update# 安装python3
sudo apt -y install python3# 安装pip工具
sudo apt -y install python3-pip
安装过程如下图:
3)确认是否安装完成
运行下面两条命令,查看是否能打印python的版本信息:
python3 --versionpip3 --version
如下图:
可以看到,安装的是python3.7版本。
但是我想要安装的是python3.8,或者更高的版本,而是用apt命令,默认安装的是3.7版本。然后网上找了一些参考,安装更高版本只能下载python源码,然后自行编译安装。
3.2 安装更高版本python
下面我以安装python3.10.9版本为例,记录下安装过程。
大家可以参考官网这篇文章的介绍进行安装:
https://computingforgeeks.com/how-to-install-python-on-ubuntu-linux-system/
官网介绍了也可以通过命令安装python3.10以上的版本,但是我在自己的开发板试过了,安装失败,所以下面我只介绍下载源码,进行编译安装。
1)安装构建python3.10所需依赖
sudo apt update
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev
安装过程中需要确认的,输入y即可。
2)下载python3.10.9源码
wget https://www.python.org/ftp/python/3.10.9/Python-3.10.9.tgz
上面是使用wget命令下载,我们也可以在电脑上到python的官网下载,然后想办法把文件传输到开发板即可。
3)解压缩python3.10.9
tar -zvxf Python-3.10.9.tgz
4)进入解压目录,运行configure文件
cd Python-3.10.9
./configure --enable-optimizations
configure
脚本可以检查所需的依赖项,–-enable optimization
标志通过运行多个测试来优化二进制文件。
发现有一些提示是 no ,这里我还不知道有什么影响,先按照步骤走吧,如果提示失败然后再一步步解决。
5)开始编译
make -j2
其中,-j2参数是你的CPU核心数,比如我的CPU是2核心的,那么我这里就使用-j2。如果是4核心的则可以使用-j4。
这里编译要超级久(我是在开发板编译的,可能开发板的CPU运行太慢了),等到最后编译完成是如下图所示:
编译过程中出现了一些找不到文件或文件夹的情况,我暂时没有去管他,就继续下一步了。
6)安装
安装其实就是把我们编译好的可执行文件,复制到系统的某个存放执行文件的目录,我们运行下面命令,会自动帮我们完成所有事情。
make altinstall
其中,make altinstall与make install的区别,altinstall skips creating the python link and the manual pages links。
即,altinstall跳过创建python链接和手册页链接的操作。
如果使用make install,在系统中将会有两个不同版本的Python在/usr/bin/目录中,这将会导致很多问题。
安装完成之后如下图所示:
7)验证是否安装完成
输入如下命令:
python3.10
然后可以看到打印信息如下:
说明已经完成安装了。
4. 设置python软链接默认指向python3.10
4.1 更新python指向
1)删除原来python3的软链接
我原来的apt模式安装的python3.7版本,它的软链接文件在哪,可以使用which命令查找:
which python3
可以查找到是在 /usr/bin/python3 的路径。
然后使用rm命令删除这个原有软链接:
rm /usr/bin/python3
2)新建python3指向3.10版本
我们先查找python3.10在哪个目录:
which python3.10
如下图:
然后使用ln命令新建软链接:
ln -s /usr/local/bin/python3.10 /usr/bin/python3ln -s /usr/local/bin/python3.10 /usr/bin/python
我这里新建了两个软链接 python 和 python3 都指向了 3.10 版本。如果你只需要 python3 这个软链接,那么你只执行其中一条命令即可。
4.2 更新pip指向
更新pip工具指向,和上面的更新python指向是一样的。都是先找到原来的软链接指向,然后删除,然后再创建新的软链接指向即可。
这里不详细介绍,只记录需要使用的命令如下:
# 删除原有软链接
rm /usr/bin/pip3# 查找pip3.10路径
which pip3.10# 建立新的软链接
ln -s /usr/local/bin/pip3.10 /usr/bin/pip3
ln -s /usr/local/bin/pip3.10 /usr/bin/pip
更新完之后,我们查看 pip 工具版本:
pip --version
如下图:
到这里就把python3.10的环境安装完成了。如果能用 apt 命令安装的话,其实也就是一条命令的事,但是我想安装的是 python3.8 以上的版本,然后这个命令安装失败,所以不得不自己下载python源码,然后自行编译安装。