查看树莓派环境
目标树莓派的环境直接关系到我们的交叉编译环境配置,我们可以直接执行下面的命令查看树莓派的工具链版本,做到心中有数。即:查看链接器版本、查看动态链接器版本、查看本地 GCC 编译器版本、查看交叉编译器版本、查看系统内核和硬件架构信息。
asher@raspberrypi:~$ ld -v
asher@raspberrypi:~$ ldd --version
asher@raspberrypi:~$ gcc -v
asher@raspberrypi:~$ arm-linux-gnueabihf-gcc -v
asher@raspberrypi:~$ uname -m
asher@raspberrypi:~$ uname -a
获取rpi-5.10.y(5.10.63)
因为Linux 驱动模块与内核版本强绑定,所以,当我们以交叉编译的方式进行Raspberry Pi OS驱动开发时,驱动编译时使用的内核源码版本,与系统当前运行的内核版本要完全一致(包括主版本、次版本、补丁号)。我们qemu模拟系统当前运行的Raspberry Pi OS版本为5.10.63,下载连接:ZIP格式 TAR.GZ 格式
asher@raspberrypi:~/source/linux_driver$ uname -r
5.10.63
关于github下载指定版本的rpi-5.10.y的方法在这里说一下,基本步骤可以参考:
- 打开树莓派内核仓库:
访问树莓派官方内核仓库:树莓派内核仓库 - 切换到 rpi-5.10.y 分支,找到目标版本的标签(Tag)
搜索并选择 rpi-5.10.y 分支,点击 “Tags” 查看所有标签(如 stable_20250127),点击目标标签(如 stable_20250127),进入标签详情页;,在页面中找到 “Latest commit” 下方的 commit 哈希值(如 a1b2c3d4…),记录该值。 - 通过 commit ID 确定内核版本号
树莓派内核的版本号通常记录在源码的 Makefile 中,可通过 commit ID 直接查看该文件。访问链接:https://github.com/raspberrypi/linux/blob/commit ID/Makefile(将 commit ID 替换为步骤 1 获取的哈希值);在 Makefile 中找到 VERSION(主版本)、PATCHLEVEL(次版本)、SUBLEVEL(补丁号),例如:
VERSION = 5
PATCHLEVEL = 10
SUBLEVEL = 63 # 补丁号
- 下载该版本的内核源码包
https://github.com/raspberrypi/linux/archive/<commit


1208

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



