TODO: checken ob qttools5-dev-tools funktioniert fuer xconfig ====== Kernel kompilieren ====== Pakete: build-essential pkg-config libncurses5-dev qttools5-dev-tools qtbase5-dev flex bison libelf-dev libssl-dev bc dwarves ===== Debian (ab 7) ===== cd wget -O - https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.9.1.tar.xz | tar xJ sudo ln -s ~/linux-5.9.1 /usr/src/linux cd /usr/src/linux make help make olddefconfig make localmodconfig oder make localyesconfig grep -c '^processor' /proc/cpuinfo make -j 8 all sudo make modules_install install ==== ausgewählte Optionen für Kernel .config ==== * ''CONFIG_KERNEL_XZ=y'' ==== Doku ==== * https://docs.kernel.org/next/admin-guide/quickly-build-trimmed-linux.html * https://www.heise.de/ct/artikel/Linux-Kernel-massgeschneidert-1402386.html ====== Eigenes Kernel-Modul schreiben ====== Keine Angst, nur ein ganz einfaches "Hello World" Beispiel ... ==== Debian ==== cd aptitude install linux-source-xxx tar xjf /usr/src/linux-source-xxx mkdir hello vi hello.c #include #include #include static int hello_init(void) { printk(KERN_ALERT "Hello World!\n"); return 0; } static void hello_exit(void) { printk(KERN_ALERT "Good bye world!\n"); } module_init(hello_init); module_exit(hello_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("me"); vi Makefile obj-m := hello.o make -C ../linux-source-2.6.18/ SUBDIRS=$PWD modules