我正在编译Linux内核: http : //tldp.org/LDP/lkmpg/2.6/html/lkmpg.html
我有一个简单的hello世界程序hello-1.cpp
#include <linux/module.h> #include <linux/kernel.h> int init_module(void) { return 0; } void cleanup_module(void) { }
但我正在尝试使用Makefile来构build它:
obj-m += hello-1.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
我遇到了一些错误。
make -C /home/pacman/linux-2.6.34.11/2.6.35.6-45.fc14.i686/build M=/home/pacman/p1 modules make: *** /home/pacman/linux-2.6.34.11/2.6.35.6-45.fc14.i686/build: No such file or directory. Stop.
make: * [all]错误2
我忘了定义一些东西吗?
重命名你好1。 cpp to hello-1。 c (模块必须用C语言编写)并添加行:
module_init(init_module); module_exit(cleanup_module);