kernel cross compiling
Hi all!
I'm searching for an easy way of testing new kernels on my n2100.
I'm familiar with the cross-compiling and kernel devel on ARM, but I'm not
so familiar with the debian way of doing this.
Ideally I would like to cross-compile the kernel and the initrd image, put
these files on my tftp server and tftpboot my n2100 (so I don't flash a
non-working kernel).
I tried to cross-compile the kernel (using a toolchain provided by the emdebian
project) using the following command:
ARCH=arm fakeroot make-kpkg --initrd --arch arm --subarch=iop32x kernel_image
Since I don't know how to cross-generate the initrd image, I tried to install
this packages on my n2100, but it fails with the following message:
Kernel /boot/vmlinuz-2.6.25.4 does not match your subarchitecture
iop32x, therefore not writing it to flash.
The good thing is that this kernel (and the image) is working when booted
on tftp :)
So I have a working (but slow and boring) development environment.
1. make-kpkg on the host machine
2. boot the n2100 with a working kernel
2. scp the package to the n2100
3. install the package on the n2100 (to generate the initrd image)
4. copy back the kernel and initrd to the /tftpboot on the host machine
5. reboot the n2100 to test the kernel+initrd image
So here are my questions:
1. how to fix the problem "...does not match your subarchitecture..." ?
2. Is there a way of cross-generating the initrd-image ?
I would like to know how the current developers are doing this task (kernel
compiling, testing, ...), since I think there is a direct relationship with
the compfort in this task and the kernel quality ;)
Please let me know if there is a howto somewhere and if I'm posting on the
right list.
Best regards
Marc
Reply to: