【Makefile】Linux内核模块编译

在Linux内核模块编译中,obj-m用于指定将源代码编译为可动态加载的模块(.ko文件),而非直接嵌入内核。

 典型Makefile示例

# 定义要编译的内核模块对象文件(.o文件会自动生成对应的.ko模块)
obj-m += led_drv.o led_dev.o

  

# all目标:默认编译任务
all:
    # 调用内核构建系统:
    # -C 指定内核源码目录(/opt/kernel)
    # SUBDIRS告诉内核构建系统模块源码的当前位置
    # modules表示编译模块
    make -C /opt/kernel SUBDIRS=$(PWD) modules  

# clean目标:清理编译生成的文件
clean:
    # 调用内核构建系统的清理规则
    make -C /opt/kernel SUBDIRS=$(PWD) clean  

应用场景

驱动开发:编写硬件与操作系统之间的接口程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值