作者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
推 kafy:成功了,真的很感謝大大的佛心~~*^^* 06/14 19:10
→ tomnelson:這篇應該可以m起來! 06/14 23:28
推 QCANCER:簡單明瞭 06/15 15:56
→ fourdollars:Linux Device Driver 書上的範例當然是簡單明瞭囉~ :P 06/15 16:09
推 bzgibson:LDD 是聖經沒錯~但我看的很痛苦!!!!實力太差了~~" 06/16 17:17