作者Spig (Spig)
看板LinuxDev
标题Re: [问题] 什麽版本的linux比较适合练习开发drive …
时间Mon Jun 14 18:03:07 2010
※ 引述《kafy ()》之铭言:
: 我目的只是想练习开发简单的module、driver而已,
: 因为我原本用ubunt9.10,可是时在遇到很多问题没办法顺利解决,
: 现在连个简单的helloworld module的环境都建不起来,
: survey很多东西,每个东西一试,结果变得又要survey更多东西,
: 现在连系统都搞烂了,在survey下去原本的正事就不用做了,
: 有没有比较适合开发、测试的版本呢?
: 我知道这不是真正的办法,但现在实在不太允许花太多时间在设定环境上,
: 希望高手可以帮忙,谢谢!
好, 不要管 dkms 了, 请丢掉他 (丢远一点)
先安装一下 gcc
# sudo apt-get install build-essential
开个目录, 建二个档案
先建 Makefile
obj-m := hello.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
再建 hello.c
#include <linux/kernel.h>
#include <linux/init.h>
static int __init hello_init(void)
{
pr_info("Hello world.\n");
return 0;
}
static void __exit hello_exit(void)
{
pr_info("Goodbye world.\n");
}
module_init(hello_init);
module_exit(hello_exit);
然後键入 make, 没 error 的话应该可以看到 hello.ko
然後键入 sudo insmod ./hello.ko
都没 error 的话 dmesg | tail -1 就会看到 hello world 了 :)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.242.151.101
1F:推 kafy:成功了,真的很感谢大大的佛心~~*^^* 06/14 19:10
2F:→ tomnelson:这篇应该可以m起来! 06/14 23:28
3F:推 QCANCER:简单明了 06/15 15:56
4F:→ fourdollars:Linux Device Driver 书上的范例当然是简单明了罗~ :P 06/15 16:09
5F:推 bzgibson:LDD 是圣经没错~但我看的很痛苦!!!!实力太差了~~" 06/16 17:17