Project

General

Profile

Actions

Toolchain » History » Revision 5

« Previous | Revision 5/23 (diff) | Next »
Anonymous, 02/19/2016 10:49 PM
Added hint to try different packages when debugging.


To compile osmocomBB or SIMtrace for the target we need a GNU Toolchain for ARM.
There are various pre-compiled toolchains available but not all of them will produce working firmware.
We will try to support all these configurations but it might take a while to identify the source of a problem.

If you have persistent errors when compiling, try using a different package.

=== GNUArm ===

The toolchains that are known working are the [http://www.gnuarm.com GNUArm.com] ones.
They provide a ARM GCC 3.4.3 for x86 [http://gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-6.1.tar.bz2 here] and a ARM GCC 4.0.2 for x86_64 [http://gnuarm.com/bu-2.16.1_gcc-4.0.2-c-c++_nl-1.14.0_gi-6.4_x86-64.tar.bz2 here].
The toolchain is relocatable and can be extracted in your home directory.

For x86 {{{
wget http://gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-6.1.tar.bz2
tar xf bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-6.1.tar.bz2
mv gnuarm-* ~/gnuarm
}}}

For amd64 {{{
wget http://www.gnuarm.com/bu-2.16.1_gcc-4.0.2-c-c++_nl-1.14.0_gi-6.4_x86-64.tar.bz2
tar xf bu-*_gcc-*-c-c++_nl-*_gi-*_x86-64.tar.bz2
mv gnuarm-* ~/gnuarm
}}}

To be able to use the toolchain, add the crosscompilers to your PATH {{{
export PATH=~/gnuarm/bin:$PATH
}}}

=== Build one from source ===

If you want to build your own toolchain, known to be working with OsmocomBB, see here: [wiki:GnuArmToolchain].

=== Ubuntu packages ===
gnuarm packages from following ppa are known to work on ubuntu 10.10 to build osmocom-bb. They are known '''not''' to work for SIMtrace {{{
sudo add-apt-repository ppa:bdrung/bsprak
sudo apt-get update
sudo apt-get install arm-elf-toolchain
}}}

=== Mac OS X ===

Apparently the arm-elf-gcc 4.3.2 from ports for mac os x can compile the sourcecode as well after symlinking /opt/local/bin/arm-elf-ranlib to /opt/local/bin/arm-elf-linux-ranlib and /opt/local/bin/arm-elf-strip to /opt/local/bin/arm-elf-linux-strip.
If you omit the links, there will be unresolvable references to symbols in the libraries.

Files (0)

Updated by about 8 years ago · 5 revisions

Add picture from clipboard (Maximum size: 48.8 MB)