Cross compiling Linux kernel for Beagleboard

We assume, we are compiling for omap3 beagleboard embedded hardware platform,

 $ cd /home/devbee 
 $ mkdir beagleboard 
 $ cd beagleboard 

Clone the kernel

 $ git clone https://github.com/beagleboard/linux.git 

Download toolchain

 $ wget -c https://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz 

Extract Toolchain

 $ tar xvf  gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz 

Now, use the below script to compile and generate uImage,

 $ vim compile.sh 
#!/bin/bash
echo "exporting toolchain..."
export PATH=$PATH:/home/devbee/beagleboard/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin

cd linux

echo "configuring default kernel..."
make ARCH=arm omap2plus_defconfig

echo "compiling kernel for uImage..."
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x80008000 uImage
 $ source compile.sh 
Android Android Commands Android Java Applications Application Libraries Bash / Shell Scripts Bluetooth driver Build Frameworks Commands and Packages Core Kernel C Programs Development Environment Setup Documents / Books Errors & Failures File Systems Framebuffer / Display Driver git Go Language Programs Hardware Platforms Home Kernel & Device Drivers Kernel Booting and Porting Linux, OS Concepts and Networking Linux Device Drivers Linux Host, Ubuntu, SysAdmin Linux Kernel Linux Networking Middleware Libraries, HAL NDK / Middleware / HAL Network Driver OS Concepts PHP Procfs Filesystem Programming Languages RaspberryPi Scripting and Automation Search Engine Optimisation ( SEO ) Social Media Socurce Code Management ( SCM ) System Administration, Security Testing and Debugging Uncategorized Userspace Utilities Web design and development Wordpress Yocto / Bitbake / Openembedded

Leave a Reply