#================================================================
# Copyright (C) 2021 yRain Co.LTD. All rights reserved.
#
# 文件名称:Makefile
# 创 建 者:yRain-liuzhicheng
# 创建日期:2021年03月23日 星期二 15时55分11秒
# 描 述:
#
#================================================================
ifneq ($(KERNELRELEASE),)
MODNAME?=helloworld
obj-m:=$(MODNAME).o
else
#KERNELDIR:=/lib/modules/$(shell uname -r)/build/
KERNELDIR:=/home/liuzhicheng/yRain/sdk_with_repo/kernel/
all:
$(MAKE) -C $(KERNELDIR) M=$(CURDIR) modules
clean:
$(MAKE) -C $(KERNELDIR) M=$(CURDIR) clean
endif
或下面这个,看自己喜好了
#================================================================
# Copyright (C) 2021 yRain Co.LTD. All rights reserved.
#
# 文件名称:Makefile
# 创 建 者:yRain-liuzhicheng
# 创建日期:2021年03月23日 星期二 15时55分11秒
# 描 述:
#
#================================================================
MODNAME?=helloworld
obj-m:=$(MODNAME).o
#KERNELDIR:=/lib/modules/$(shell uname -r)/build/
KERNELDIR:=/home/liuzhicheng/yRain/sdk_with_repo/kernel/
PWD:=$(shell pwd)
all:
make -C $(KERNELDIR) M=$(PWD) modules
clean:
make -C $(KERNELDIR) M=$(PWD) clean
CROSS_COMPLE:=/opt/host/bin/aarch64-linux-
ARCH:=arm64
CC:=(CROSSCOMPILE)gccLD:=(CROSS_COMPILE)gcc
LD:=(CROSSCOMPILE)gccLD:=(CROSS_COMPILE)ld
Linux内核模块编译
这是一个关于Linux内核模块编译的Makefile示例,展示了如何使用Makefile来构建和清理helloworld模块。示例中定义了MODNAME、obj-m变量,并设置了KERNELDIR为自定义路径,用于指定内核源码位置。通过执行'$(MAKE)-C $(KERNELDIR) M=$(CURDIR) modules'和'$(MAKE)-C $(KERNELDIR) M=$(CURDIR) clean'命令,实现模块的编译和清理。
1142

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



