看板 LinuxDev 關於我們 聯絡資訊
※ 引述《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