kernel-2.6 のバージョンも 2桁になった。そろそろまじめに、kernel-2.6 のお勉強をしましょう。kernel-2.4もそれほど勉強したわけではないが…。現在は、移行期間みたいな感じでそんなに、普及している感はないような気がするが、当然あと何ヶ月かすると、2.6ばっかになるんだろーなー。とういことで、UNIX USER 2004/3 〜 2004/9の連載"GCC プログラミング工房 --Linuxカーネル2.6実習編--"に沿ってお勉強。
# make O=/usr/src/kernel-2.6.x/build bzImage (とか、もしくは) # export KBUILD_OUTPUT=/usr/src/kernel-2.6.x/build # make bzImage
# make ARCH=sh help Cleaning targets: clean - remove most generated files but keep the config mrproper - remove all generated files + config + various backup files Configuration targets: oldconfig - Update current config utilising a line-oriented program menuconfig - Update current config utilising a menu based program xconfig - Update current config utilising a QT based front-end gconfig - Update current config utilising a GTK based front-end defconfig - New config with default answer to all options allmodconfig - New config selecting modules when possible allyesconfig - New config where all options are accepted with yes allnoconfig - New minimal config Other generic targets: all - Build all targets marked with [*] * vmlinux - Build the bare kernel * modules - Build all modules modules_install - Install all modules dir/ - Build all files in dir and below dir/file.[ois] - Build specified target only rpm - Build a kernel as an RPM package tags/TAGS - Generate tags file for editors cscope - Generate cscope index checkstack - Generate a list of stack hogs Kernel packaging: rpm-pkg - Build the kernel as an RPM package binrpm-pkg - Build an rpm package containing the compiled kernel & modules deb-pkg - Build the kernel as an deb package Documentation targets: Linux kernel internal documentation in different formats: sgmldocs (SGML), psdocs (Postscript), pdfdocs (PDF) htmldocs (HTML), mandocs (man pages, use installmandocs to install) Architecture specific targets (sh): zImage - Compressed kernel image (arch/sh/boot/zImage) adx_defconfig - Build for adx cqreek_defconfig - Build for cqreek dreamcast_defconfig - Build for dreamcast hp680_defconfig - Build for hp680 rts7751r2d_defconfig - Build for rts7751r2d se7300_defconfig - Build for se7300 se7751_defconfig - Build for se7751 snapgear_defconfig - Build for snapgear systemh_defconfig - Build for systemh make V=0|1 [targets] 0 => quiet build (default), 1 => verbose build make O=dir [targets] Locate all output files in "dir", including .config make C=1 [targets] Check all c source with checker tool Execute "make" or "make all" to build all targets marked with [*] For further info see the ./README file