19、编写首个内核模块:跨平台编译全流程解析

编写首个内核模块:跨平台编译全流程解析

1. 跨平台编译系统的搭建

跨平台编译内核模块,需要做好以下两个准备:
- 目标系统内核源码树 :需将目标系统的内核源码树安装到主机系统的工作空间中。以树莓派作为目标系统为例,可参考官方文档:https://www.raspberrypi.org/documentation/linux/kernel/building.md 。
- 交叉工具链 :通常主机系统为 x86_64 架构,若目标系统是 ARM - 32 架构,则需要 x86_64 到 ARM32 的交叉工具链。要下载并安装树莓派专用的 x86_64 到 ARM 的工具链到主机系统的工作空间。

假设已安装 x86_64 到 ARM 的交叉工具链,且工具链前缀为 arm - linux - gnueabihf - ,可以通过以下命令检查工具链是否安装以及其二进制文件是否已添加到路径中:

$ arm - linux - gnueabihf - gcc
arm - linux - gnueabihf - gcc: fatal error: no input files
compilation terminated.
$

该命令运行成功,只是因为没有传入 C 程序作为参数进行编译,所以会报错。也可以使用 arm - linux - gnueabihf - gcc --version 命令查看编译器版本。

2. 首次尝试:设
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值