Difference between revisions of "Build uClinux for EA2478 Board"
(→Finish the kernel configuration) |
|||
Line 181: | Line 181: | ||
A build help script can be found at [[Build script for EA distribution]]. | A build help script can be found at [[Build script for EA distribution]]. | ||
+ | |||
+ | ==MicroWin== | ||
+ | |||
+ | It is possible to enable MicroWin and have the LCD in action. Follow the instructions on [[MicroWin on EA board]]. |
Revision as of 07:36, 10 October 2013
Contents
A mini howto
Make a xen-virtualised Centos or use the one assigned to you.
Install development tools
log in to your virtual server as root user and do this:
$ yum groupinstall "development tools" $ yum install ncurses-devel zlib-devel libacl-devel lzo-devel uuid-devel $ yum update # Updates the server completely $ init 6 # Reboots the server
The server reboots and uses the newest kernel and other software packages updated.
Prepare for the Embedded Artists SW
Log in again as root
Create /home/emb/eadisk
$ mkdir -p /home/emb/eadisk $ mkdir -p /home/emb/uClinux-dist
Get the EA realese
Copy the extra directory on the EA DVD to /home/emb/eadisk or by using
$ cd /home/emb/eadisk $ scp -r <your login>@bren.hih.au.dk:/home/emb/extra/ .
Prepare settings
Create the file /home/emb/uClinux-dist/settings.sh and put in the following:
# # Setup script for uCLinux development environment. # Run using 'source ./settings.sh' # # Copyright (c) 2006 uCLogix # script_name='settings.sh' # # Make sure our current working directory represents # a valid uCLinux environment. # if [ ! -f $script_name ]; then echo echo Please change to the root directory of your uCLinux echo environment and type \'source ./$script_name\'. echo else UCLINUX=`pwd` export UCLINUX export UCLINUX_VER=0.40-final # Figure out host system architecture # for now, only linux-i386 supported HOSTARCH=linux-i386 # # Add required binary tools to the user's search path # PATH=$UCLINUX/bin:$PATH PATH=$UCLINUX/usr/local/bin:$PATH PATH=/home/emb/uClinux-dist/usr/local/bin/:$PATH PATH=/usr/local/lib/gcc-lib/arm-elf/2.95.3:$PATH # # Check for "." or ".\" in the path - it's broken # echo $PATH | tr ":" "\n" | grep '^\./*$' > /dev/null && echo "WARNING: '.' detected in PATH - fixing it." 1>&2 PATH=`echo ${PATH} | tr ":" "\n" | grep -v '^\./*$' | tr "\n" ":"` PATH=${PATH}:/home/emb/uClinux-dist/usr/local/bin/ export PATH echo uCLinux environment set to \'$UCLINUX\' fi
Prepare the distribution
Now in /home/emb execute these commands:
$ cd /home/emb $ ln -s eadisk/extra/* . $ tar zxvf uClinux-dist-20070130.tar.gz $ cd uClinux-dist $ rm -rf linux-2.* $ tar zxvf ../linux-2.6.21.tar.gz $ mv linux-2.6.21/ linux-2.6.x $ gunzip -c ../ea-uClinux-081020.diff.gz | patch -p1 $ gunzip -c ../ea-v3_1_incr1.diff.gz | patch -p1 $ cd ..
Edit the arm-elf-tools-20040427.sh file changing line 39 to look exactly like this (note the -n):
tail -n +${SKIP} ${SCRIPT} | gunzip | tar xvf -
Execute this command:
$ sh arm-elf-tools-20040427.sh
Ignore any "burps" from gunzip at the end of the file.
Copy the precompiled file system utilities to uClinux-dist/bin folder:
$ cd uClinux-dist $ cp /home/emb/eadisk/extra/mk*fs* bin/ $ chmod a+x bin/mkcramfs
Install the arm linux tools
$ source settings.sh $ tar zxvf ../arm-linux-tools-20061213.tar.gz
Install u-boot
Important! Install Uboot before continuing.
Finish the kernel configuration
After the u-boot has been successfully installed and compiled finish up the kernel configuration:
$ cd /home/emb/uClinux-dist $ cp ../u-boot-1.1.6/tools/mkimage bin/ $ chmod a+x bin/mkimage $ make menuconfig # Select proper vendor and board - # exit twice to save the new settings # after selection of the proper hardware # it may also be necessary to un-select Microwin because of an error in the code $ make # Be patient - take a mug of coffee or the like
If no errors, you are up running!
First time you have to load the uBoot using for instance FlashMagic on your local PC.
When the first copy of uBoot has been installed all the rest can be loaded using tftp.
What you may need now is to setup a Tftp server.
Copy the linux image to the tftp servers home directory.
$ cp images/uLinux.bin /tftpboot $ cp images/romfs.img /tftpboot
If you modify the uBoot bootloader you should also copy the new uboot image to the tftp server.
$ cp ../u-boot-1.1.6/u-boot.bin /tftpboot
From this point you can follow the fine guide "Getting started with uCLinux" from Embedded Artist (can be found in the /home/emb/doc directory on bren). The bootloader is described from page 126.
A build help script can be found at Build script for EA distribution.
MicroWin
It is possible to enable MicroWin and have the LCD in action. Follow the instructions on MicroWin on EA board.