debianでカーネル構築

フォルダ作成

$ mkdir ~/MYK
$ cd ~/MYK


http://kernel.org/pub/linux/kernel/v2.6/から最新カーネルGET

$ ls
linux-2.6.24.tar.bz2

デフォルトの.configを/bootから持ってくる。

$ tar xjf linux-2.6.24.tar.bz2
$ cd linux-2.6.24/
$ cp /boot/config-2.6.18-6-486 ./.config

menuconfigを起動

$ make menuconfig
HOSTCC scripts/basic/fixdep
HOSTCC scripts/basic/docproc
HOSTCC scripts/kconfig/conf.o
HOSTCC scripts/kconfig/kxgettext.o
HOSTCC scripts/kconfig/lxdialog/checklist.o
In file included from scripts/kconfig/lxdialog/checklist.c:24:
scripts/kconfig/lxdialog/dialog.h:32:20: error: curses.h: No such file or directory
...............

menuconfigがエラー。ncursesがないのでインストール

$ apt-cache search ncurses|grep dev
btscanner - ncurses-based scanner for Bluetooth devices
lib64ncurses5-dev - Developer's libraries for ncurses (64-bit)
libncurses5-dev - Developer's libraries and docs for ncurses
libncursesw5-dev - Developer's libraries for ncursesw
librote-dev - a simple C library for VT102 terminal emulation - development
libtexttools-dev - Ada and C++ library for writing console applications

$ sudo apt-get install libncurses5-dev

もう一度menuconfig

$ make menuconfig

こんどは成功。ここでいろいろなコンパイルオプションを選択できる。

menuconfig.png

コンパイル開始

$ sudo make-kpkg --initrd --revision=mykernel.1.0 kernel_image

あとは以下のコマンドでインストールできるようだ。(実際はやってない)

# dpkg --install ../linux-image-2.6.24_mykernel.1.0_i386.deb

(参考)
http://www.debian.org/doc/FAQ/ch-kernel.en.html
http://www.togaware.com/linux/survivor/Why_make_kpkg.html

Leave a Reply

Your email address will not be published. Required fields are marked *

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)