Configuration advice, specifically for arm-cortex-a8

Erik Leunissen
Mon Feb 2 22:03:00 GMT 2015

Hi all,

First off: I'm new to ct-ng, and my experience with cross-compiling is 
limited to crossing operating systems and almost non-existent with 
crossing architectures.

My need is to produce a toolchain that runs on a x86_64-linux desktop 
(openSuSE) and produces binaries for the beagle-bone-black, which has a 
Sitara AM3358 ARM Cortex-A8 Microprocessor.

I already ran ct-ng-1.20 with two different configurations and the 
toolchains were produced without a single hickup, great automation!

Now, after this first exercise, I'm left with a generic question: I'd 
like to keep my toolchain as configurable as possible. What features are 
to be configured by ct-ng and which do I need to leave as configurable 
through gcc invocation options? Two specific cases:

Case 1: the floating point processing mode
I can set a configuration option in ct-ng as:
- hardware
- software
- auto (leave to gcc)
- softftp

I experimented with both "hardware" and "leave to gcc", because of the 
NEON floating-point accelerator, advertised here:

Whatever choice I make: the resulting toolchains fail if I invoke gcc 
with the option:


  However, the option


doesn't raise any errors.

That surprises me. Doesn't "NEON floating-point accelerator" imply 
hardware floating point? See also:

What am I missing?

Case 2: the cpu
This is a arm-cortex-a8, specifically Sitara AM3358 ARM Cortex-A8.
What are the pro's and con's of configuring this in ct-ng (with the 
option category "Target optimisations") and leaving it as configurable 
at the gcc command line, using:

     $prefix-gcc -march=armv7-a -mcpu=cortex-a8 -mtune=cortex-a8

Thanks for sharing any insights,

Erik Leunissen

For unsubscribe information see

More information about the crossgcc mailing list