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