|ARM Technical Support Knowledge Articles|
Applies to: Development Boards
Note: the examples below are using an Emulation Baseboard (EB) with a CT11MPCore. For other systems, the file names and paths will be slightly different but the procedures will be the same.
It should be pointed out that ARM does not support Linux. These instructions are provided in order to assist customers who are using our development boards and for some reason need to rebuild one of the kernel images posted on http://www.arm.com/linux/linux_download.html.
This FAQ assumes that you are building the kernel on an x86 Linux host. The file and path names here refer to the versions available at the time of writing. These will change in future releases - modify the command lines accordingly.
1. Downloading the required files
Ensure that there is at least 250Mb of storage space available on the computer where you intend to build the kernel - this will be required for building.
Download the following files from the ARM Linux Download page to a work directory on your build computer:
2. Extracting the downloaded components
Extract the toolchain into the work directory and set up the CROSS_COMPILE environment variable:
$ mkdir codesourcery
$ tar -C codesourcery
-xzf sourceryg -4.1-6-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.gz
$ export CROSS_COMPILE="$PWD/codesourcery/bin/arm-none-linux-gnueabi-"Extract the pre-built U-Boot package and add the current directory (where the mkimage utility was extracted) to the PATH:
$ tar xzf U-Boot-RealView-EB.tar.gz
$ export PATH="$PATH:$PWD"
$ tar xjf linux-2.6.17.tar.bz2
$ cd linux-2.6.17
$ gzip -cd ../patch-2.6.17-arm1.gz | patch -p1
$ cd ..
$ export ARCH=arm
$ tar xzf Image-RealView-EB-2.6.17-arm1.tar.gz
3. Configuring and building the Linux kernel
$ cp kernel/src/2.6.17/configs/config-2.6.17-arm1-realview-eb-mpcore
$ cd linux-2.6.17
$ make oldconfig
$ make xconfig
$ make menuconfig
$ make uImage
Article last edited on: 2012-01-27 14:21:19
Did you find this article helpful? Yes No
How can we improve this article?