您编写的用于提供procfs接口的函数只是LKM源代码的一部分。
http://linux.die.net/lkmpg/x769.html有一个使用procfs的简单示例,在此转载:
我复制了上面链接的代码 - 您将在http://www.cyberciti.biz/tips/compiling-linux-kernel-module.html找到构建内核模块的教程。总结是:
1)确保在/ usr / src中安装了内核源代码。
2)创建一个类似于:
的makefileobj-m = procfs2.o
KVERSION = $(shell uname -r)
all:
make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(KVERSION)/build M=$(PWD) clean
3)使用make命令构建模块4)使用命令insmod procfs2.ko将模块加载到内存中(以root用户身份执行)
我复制了代码并创建了MAKEFILE,稍后如果我从控制台发出make命令,那么它显示为:make:没有什么可以为所有人完成的。有人可以告诉我可能是什么错误??
答案 0 :(得分:4)
以下是内核模块的Makefile示例。
需要注意的重要一点是,下面显示的点必须替换为 TAB ,将其替换为空格将导致Makefile出现故障。
obj-m += hello.o
all:
.......make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
.......make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean