Re: [轉錄][問題]kernel跟驅動程式版本不合
※ 引述《wlsabcd (我不會C++)》之銘言:
推
04/08 18:35,
04/08 18:35
→
04/08 18:36,
04/08 18:36
→
04/08 18:36,
04/08 18:36
推
04/09 10:20,
04/09 10:20
→
04/09 10:23,
04/09 10:23
推
04/09 11:00,
04/09 11:00
推
04/09 11:26,
04/09 11:26
Sorry 最近在忙論文,沒有常上版來看..
在 2.6 kernel 可以直接打 make help 看到所有支援的 target
事實上這整套 Makefile 被稱為 Kbuild...我上次花了一些時間才把
整套 Makefile trace 過...裡面可以做到非常多事情...以下,我以
2.6.20.6 的 Makefile 來說明(其他版本差異不大)
一般來說,你 download 下來,設定完組態 (make config 系列,有
11 個 target) 就可以直接依序完成指令完成編譯與安裝
make (這動作等同於 make modules && make bzImage,在
make help 也有說明)
make modules_install
make install
reboot
在 make install 這步驟 makefile 已經幫你將 mkinitrd 以及 grub
修改都完成所以直接重開就會有新的 kernel 選項可以開機...
當然,我們知道 make 的 target 也是可以一次指定多組,他會依序執
行,因此上面指令可以用下面方式執行
make modules bzImage modules_install install && reboot
以上,指的是「完整」的編譯一次,包含 modules & vmlinux image
第二次編譯就依需求來選擇
比方說:
case 1)
我修改了 build-in 的檔案,那就得 make bzImage install && reboot
case 2)
修改 module 的檔案,這就容易多,make path/file.ko
再把正在使用的 module rmmod,使用新的 ko 去 insmod 就可馬上使用
至於 copy 方式,make modules 以及 make modules_install 最小單位
都是目錄,因此印象中沒有僅複製單一檔案的方式,所以搞不好手動
cp 還比較快..
更多說明可以在 kernel 解開的 Documentation/kbuild 裡面找到相關
使用說明
順便一提,kernel 的 makefile 也可以幫你將 documentation 轉成 pdf/html
等格式,也可以幫你包成 rpm/tarball 等
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.214.90
推
04/12 12:17, , 1F
04/12 12:17, 1F
推
04/12 12:51, , 2F
04/12 12:51, 2F
→
04/12 16:30, , 3F
04/12 16:30, 3F
推
04/13 02:03, , 4F
04/13 02:03, 4F
推
09/21 06:01, , 5F
09/21 06:01, 5F
討論串 (同標題文章)
LinuxDev 近期熱門文章
PTT數位生活區 即時熱門文章