This was done on Mac OSX 10.9 with tcsh
NOTE: THIS STEP IS OBSOLETE
Just use the kernel on the Erle Image or use the latest pre-built RT/PREEMPT kernel for beaglebone.
Erle compiles vanila kernel with PREEMPT flag minus various drivers to slim it down.
References for when you want to reproduce the OS image with PREEMPT kernel
Cross Compile RT Kernel on Desktop
FIXME: Fillin the details.
Install uBoot on a PC running Linux and cross-compile ARM kernel there
Install basic Linux build tools
sudo apt-get install build-essential
Compile u-boot (tools only)
wget ftp://ftp.denx.de/pub/u-boot/u-boot-latest.tar.bz2
tar -xjf u-boot-latest.tar.bz2
cd u-boot-2015.01
export CROSS_COMPILE=arm-linux-gnueabi-
export ARCH=arm
make disclean
make clean
make beagle_x15_defconfig
make tools
sudo install tools/mkimage /usr/local/bin
- http://stackoverflow.com/questions/23871924/cc1-error-bad-value-armv5-for-march-switch
- http://www.denx.de/wiki/view/DULG/UBootConfiguration
- http://beagleboard.org/project/U-Boot+%28V1%29/
- http://processors.wiki.ti.com/index.php/Sitara_Linux_Program_the_eMMC_on_Beaglebone_Black
- http://wiki.beyondlogic.org/index.php/BeagleBoneBlack_Building_Kernel
Build Kernel
git clone git://github.com/beagleboard/kernel.git
cd kernel
git checkout 3.8-rt
./patch.sh
cp configs/beaglebone kernel/arch/arm/configs/beaglebone_defconfig
wget http://arago-project.org/git/projects/?p=am33x-cm3.git\;a=blob_plain\;f=bin/am335x-pm-firmware.bin\;hb=HEAD -O kernel/firmware/am335x-pm-firmware.bin
cd kernel
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- beaglebone_defconfig -j4
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage dtbs -j4
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage-dtb.am335x-boneblack -j4
mkdir -p ~/export/rootfs
Copy the kernel to BBB
FIXME: Fillin the details.
Once new kernel is copied to BBB, Build ArduPilot
Rerefences:
Basically, follow the instructions at: - http://dev.ardupilot.com/wiki/building-the-code/building-for-beaglebone-black-on-linux/ - http://forum.erlerobotics.com/t/compile-new-kernel-and-image/107/2 - https://github.com/notro/fbtft/wiki/BeagleBone-Black - http://dev.ardupilot.com/wiki/building-the-code/building-for-beaglebone-black-on-linux/ - http://wiki.beyondlogic.org/index.php/BeagleBoneBlack_Building_Kernel - http://processors.wiki.ti.com/index.php/Sitara_Linux_Program_the_eMMC_on_Beaglebone_Black