ich kompiliere aktuell den Linux-kernel via gcc crosscompiler zu einem uImage und erzeuge dann "manuell" ein debian-Paket mittels "fakeroot dpkg-deb ...".
ein Bekannter hat mich auf das target "deb-pkg" des linux-makefiles hingewiesen. Das habe ich mal ausprobiert.
das war jetzt mein erster Aufschlag:
Code: Alles auswählen
make -j8 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- deb-pkg
- es erzeugt ein vmlinuz-image und kein uImage (=zImage + dtb + mkimage)
- es nimmt den standard-installationspfad (/boot), welcher auf meinem board anders anders ist
- ich möchte gerne den namen der kernel-binary festlegen
Code: Alles auswählen
dpkg -c ../linux-image-4.14.122-bpi-r2+_4.14.122-bpi-r2+-201_armhf.deb |grep boot
drwxr-xr-x root/root 0 2019-05-27 19:06 ./boot/
-rw-r--r-- root/root 3253473 2019-05-27 19:06 ./boot/System.map-4.14.122-bpi-r2+
-rw-r--r-- root/root 131803 2019-05-27 19:06 ./boot/config-4.14.122-bpi-r2+
-rwxr-xr-x root/root 7257800 2019-05-27 19:06 ./boot/vmlinuz-4.14.122-bpi-r2+
Code: Alles auswählen
make -j8 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
cat arch/arm/boot/zImage arch/arm/boot/dts/mt7623n-bananapi-bpi-r2.dtb > arch/arm/boot/zImage-dtb
mkimage -A arm -O linux -T kernel -C none -a 80008000 -e 80008000 -n "Linux Kernel $kernver-$gitbranch" -d arch/arm/boot/zImage-dtb ./uImage
make -j8 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- INSTALL_MOD_PATH=modules modules_install
#preinst+postinst+postrm-script+control anlegen
fakeroot dpkg-deb --build bananapi-r2-image ../debian