Das Script-File zum compilieren befindet sich im selben Verzeichnis wie im Abschnitt 10.3.1.
compile_kernel_and_copy_to_tftp_and_nfs.sh
#!/bin/sh
# source_extract.sh
PROJECT_NAME=$(./set_project_name.sh)
PROJECT=${PROJECT_NAME}
PROJECT_DIR=/nfs
# check if directory exists
if [ ! -d "$PROJECT_DIR" ];
then
sudo mkdir $PROJECT_DIR
sudo chmod -R 777 $PROJECT_DIR
sudo chown -R nobody $PROJECT_DIR
fi
PROJECT_DIR=/tftpboot
# check if directory exists
if [ ! -d "$PROJECT_DIR" ];
then
sudo mkdir $PROJECT_DIR
sudo chmod -R 777 $PROJECT_DIR
sudo chown -R nobody $PROJECT_DIR
fi
cd source
make ARCH=arm CROSS_COMPILE=/usr/local/arm-2007q1/bin/arm-none-linux-gnueabi-
../mkimage -A arm -O linux -C none -T kernel -a 20008000 -e 20008000 -n linux-2.6 -d arch/arm/boot/zImage my-kernel-image.bin
cp my-kernel-image.bin ..
cp my-kernel-image.bin /tftpboot/$PROJECT.bin
cp my-kernel-image.bin /nfs/$PROJECT.bin
cd ..
|
Nach dem Compilieren liegt der erzeuge Kernel im Verzeichnis:
arch/arm/boot/zImage
Weiterhin wird der fertige Linux-Kernel ”kernel-2.6.27_ecpu1100.bin” oder ”kernel-2.6.30_ecpu800.bin” in das TFTP-Server Verzeichnis /tftpboot kopiert. So kann es vom laufenden U-BOOT auf dem CPU Modul per TFTP übertragen und ausprobiert werden.
Für den Bootloader U-BOOT wird eine Imagedatei benötigt. Diese wurde mit dem Befehl ”mkimage” erzeugt.