| ARM Toolchain documentation | |||||||
|
Want to learn more about Bluewind? Feel free to contact us.
|
Here you will find a short guide on how to configure, build and install GCC as a cross-compiler for
Linux Systems. Our experience refers to a RedHat 6.2 Linux System running on an Intel Celeron host and to
an arm-elf target.
|
|
What you need First of all let's see which files, libraries and packages are needed:
These pieces have to be built and installed in a particular order, that is the one given. Why? Clearly the cross-compiler is needed to build the libraries, so GCC must be built before Newlib. Also, GCC has its own library (called libgcc) so Binutils must be built before GCC. Finally Insight can be added. GDB, the GNU line command debugger, can be built alone, but it is better working with Insight, that gives a nice GUI to GDB. Next to each component it has been reported the version that BlueWind used to build its own ARM toolchain, but for every component it is better to download the latest version you can find from some of these ftp sites:
|
|
|||||||||||||||||
| top |
The build procedure
Let's see then how the build procedure would look like: > cd home/mytmp home/mytmp/> host=i686-pc-linux home/mytmp/> target=arm-elf home/mytmp/> prefix=/tools home/mytmp/> i=$/tools/bin mkdir build-bin build-gcc build-new build-ins Configure, build and install binutils: home/mytmp/> cd build-bin home/mytmp/build-bin/> ../binutils-2.10/configure --target=$target \ --prefix=$prefix -v home/mytmp/build-bin/> make all install At this point the directory /tools/bin has to be added to the environment variable PATH: home/mytmp/build-bin/> export PATH home/mytmp/build-bin/> PATH=/tools/bin:$PATH Configure, build and install gcc: home/mytmp/build-bin/> cd ../build-gcc home/mytmp/build-gcc/> cd ../gcc-2.95.2/configure --target=$target \ --prefix=$prefix -v --with-gnu-as \ --with-gnu-ld --with-gnu-newlib home/mytmp/build-gcc/> make all install Configure, build and install newlib: home/mytmp/build-gcc/> cd ../build-new home/mytmp/build-new/> cd ../newlib-1.8.2/configure --target=$target \ --prefix=$prefix -v Note that the green highlighted settings are not necessary if, as we did, $prefix/bin is put in the path before running this: home/mytmp/build-new/> make all install \ CC_FOR_TARGET=$i/${target}-gcc \ AS_FOR_TARGET=$i/${target}-as \ LD_FOR_TARGET=$i/${target}-ld \ AR_FOR_TARGET=$i/${target}-ar \ RANLIB_FOR_TARGET=$i/${target}-ranlib Configure, build and install insight home/mytmp/build-new/> cd ../build-ins home/mytmp/build-ins/> cd ../insight-5.0/configure --target=$target \ --prefix=$prefix -v home/mytmp/build-ins/> make all install Approximate disk space requirements for building the development tools are as follows:
Following successful building and installation of each set of tools, the associated build tree may be deleted to save space if necessary. |
|
||||||||||||||||
| top |
Screenshots
Insight windows on a Gnome environment. |
|
|
| top |
Arm-elf development tools for eCos
BlueWind is also interested in eCos, the embedded configurable operating system,
is an open source real-time operating system for deeply embedded applications.
It meets the requirements of the embedded space that Linux cannot yet reach.
Linux currently scales from a minimal size of around 500 kilobytes of kernel and 1.5MB of RAM,
all before taking into consideration application and service requirements.
eCos provides the basic runtime infrastructure necessary to support devices with
memory footprints in the 10's to 100's of kilobytes, or with real-time requirements.
|
|
|
| top |
Related documents
|
|
|
| top |