omapl:linux3.3 Kernel-based compilation
OMAPL corresponds to 3 versions of the Linux source code, namely: Linux-3.3, Linux-2.6.37, Linux2.6.33, the gap here is Linux2, the lack of syslink support components.
Here we choose the Linux-3.3 version for development.
Preparation before development
- Tools for Mkimage:
sudo apt-get install u-boot-tools
- Menuconfig Component Library Installation:
apt-get install libncurses5-dev
- A properly configured
arm-none-linux-gnueabi
environment
- Kernel source files: linux-3.3.tar.bz2 (be sure to use TI to provide matching OMAPL, not just find a Linux3.3 on it)
Kernel compilation process
Unzip the kernel to the ~/work
kernel path to~/work/linux-3.3
Enter the Linux kernel path ' ~/work/linux-3.3
clean up the kernel (no less than a single word)
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- distclean
Configuring the Kernel
Configuration kernel is critical, some children's shoes said, people's kernel compiled 5 minutes to the end, how my 1 hours have not compiled, it is likely that many places for this board no use of parts you did not delete, the general factory will have a recommended configuration, of course, TI's OMAPL138 is also available as a recommended configuration.
Dragon Company gives the configuration to execute the command:
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- da850_omapl138_tl_defconfig
I am using Texas Instruments to give the configuration, then execute the command:
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- da850_omapl138_defconfig
Of course, this is not fabricated, the kernel contains the configuration files in the following directory:
./arch/arm/configs
LS below will see many configurations:
We use the configuration information of the horizontal line.
- Write configuration information using make Menuconfig
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- menuconfig
A direct exit is available, and then the configuration information is written.
In this menu we configure the driver or other components of the kernel mechanism, whether compiled into the kernel, this according to their own needs, the beginner may not have much concept of this place. You can refer to the Vedon "Embedded Linux Complete Development Manual" for the compilation kernel chapters, which include directory rules and commentary.
Compiling the kernel
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage -j4
compile the kernel will generally have a variety of errors , to Baidu or Google inventory.
After compiling, you can find Uimage in the "Arch/arm/boot" directory of the kernel source code. Uimage can be copied to the normal use of the SD system boot card FAT32 format boot partition, convenient for later SD card boot mode is u-boot loaded or burned to the NAND FLASH partition.
omapl:linux3.3 Kernel-based compilation