前面已经把学习linux的开发环境搭建好了,现在逐步开始学习开发过程。先从内核驱动开始,写一个网上已经被写烂的实列程序。先把它编译好,放进linux系统运行,看看是什么样子。
创建文件夹hello,在文件夹下面创建文件hello.c代码如下:
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>static int hello_init(void)
{
printk("hello world!\n");
return 0;
}static void hello_exit(void)
{
printk("see you next time!\n");
return;
}module_init(hello_init);
module_exit(hello_exit);MODULE_LICENSE("GPL");
MODULE_AUTHOR("youself");
Makefile文件代码如下:
obj-m:=hello.o
mymodule-objs:=module
KDIR?=
default:
make -C $(KDIR) SUBDIRS=$(PWD) modules
clean:
make -C $(KDIR) SUBDIRS=$(PWD) clean
在hello目录,直接执行命令,make KDIR=/home/jqh/work/linux-