Neuen Kernel compilieren (v3.19, ohne Real-time)

Um einen echtzeitfähigen Kernel zu compilieren siehe nächstes Kapitel.

  1. Zuerst müssen alle Tools für die Cross-Toolchain installiert sein, siehe unter Anleitung für Ubuntu oder Anleitung für Debian. Insbesondere muss GCC und die nCurses Bibliothek vorhanden sein.
  2. Kernel-Source-Code herunterladen z.B. mit:
     git clone https://github.com/torvalds/linux 
  3. Ins neue Linux-Verzeichnis wechseln und die entsprechende Version auschecken:
     git checkout v3.19 
  4. NTB MPC5200 Daten holen mit:
     git clone https://github.com/ntb-ch/linux-phycore-mpc5200b
  5. Patch in die Kernel Wurzel kopieren:
     cp ../linux-phycore-mpc5200b/kernel/jffs2.patch . 
  6. Jffs2 Patch anwenden:
    patch -p1 < ../jffs2.patch
  7. Notwendige Variable definieren:
    export ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu-
  8. Defaultkonfiguration aus linux-phycore-mpc5200b.git nach .config in Wurzelverzeichnis kopieren.
     cp ../linux-phycore-mpc5200b/kernel/linux-3.19/defconfig .config 
  9. Kernel Konfiguration überprüfen und gegebenfalls anpassen (siehe Linux-Kernel crosscompilieren):
     make menuconfig 
  10. uImage compilieren:
    make uImage
  11. Das uImage wird im Ordner „KERNELDIR/arch/powerpc/boot“ gespeichert
  12. Kernel Module compilieren:
    make modules
    make modules_install INSTALL_MOD_PATH=../modules/ 
  13. Die Module auf das Target kopieren. Z.B. unter „/lib/modules/3.19.0+“