Ubuntu下編譯Linux核心和hello模組

2021-06-18 01:15:39 字數 1553 閱讀 4201

ubuntu版本資訊:

$ uname -a

linux ubuntu 2.6.32-38-generic-pae #83-ubuntu smp wed jan 4 12:11:13 utc 2012 i686 gnu/linux

$ wget 

$ tar -xjvf linux-2.6.32.tar.bz2

$ cd linux-2.6.32

按後面的步驟中的提示安裝。

$ make menuconfig # 進入後直接選exit。

$ make

$ make modules

此步類似於安裝作業系統檔案。

$ sudo make modules_install

$ sudo make install

$ cd /boot

$ sudo mkinitramfs -o initrd.img-2.6.32 2.6.32

$ sudo vi /etc/default/grub # 行「grub_hidden_timeout=0」,由0改為30

$ sudo vi /etc/grub.d/30_os-prober # 行「timeout = 0」,由0改為30

# update-grub

$ sudo reboot # 重啟後,選擇對應版本的核心即可

$ mkdir hello # 任意目錄下建立此資料夾

#include /* needed for the macros */

#include /* needed for all modules */

module_license("dual bsd/gpl");

module_author("fred_yu");

static int __init hello_init(void)

static void __exit hello_exit(void)

module_init(hello_init);

module_exit(hello_exit);

obj-m += hello.o

$ sudo make -c /usr/src/linux-headers-2.6.32-38-generic-pae subdirs=$pwd modules # 注意路徑名稱和ubuntu版本資訊中的對應。

$ sudo insmod hello.ko

$ sudo rmmod hello.ko

$ dmesg # 檢視最後兩行,即對應原始碼中的兩行列印。

ubuntu下編譯linux核心

我們作業系統課程設計要求做關於linux核心視覺化方向相關的內容,首先要做的是編譯核心。其實核心編譯還是比較簡單的 cd usr src tar jxvf linux 3.2.28.tar.bz2 執行sudo apt get install ncurses devel3.因為ubuntu自己整合了...

Ubuntu下編譯核心

cd wget 安裝有關編譯程式。安裝make gcc,make kpkg,執行menuconfig等等和編譯核心相關的工具。安裝不了,請檢查 etc apt sources.list 檔案。有關命令 sudo apt get install build essential kernel packa...

ubuntu 下編譯核心

2.為寫qemu的watchdog驅動練手。有朋友問make的 watchdog驅動 需要什麼準備,所以寫這個blog。ubuntu 12.04.4 1.make 時間 大於1個小時 1.安裝編譯核心所需要的軟體 apt get install build essential kernel pack...