Gcc compiler

Screwface 2010-05-26 16:45:07 Link
Dear all

I've seen surfing the blogs and other websites that sometimes it is
recomended to use arm-none-linux-gnueabi-gcc to compile, and sometimes it
is arm-linux-gcc. Do you know what are the differences between those two
tools? I have not searched deeply, I've seen they were installed with
arm-linux-gcc 4.3.2, and there were some symbolic links also.

Any idea?

Regards

davef 2010-05-26 22:59:10 Link
The only explanation I could find was that -none will guess how to compile,
from the source code extension, .c or .cpp

And that was after a lot of searching.

mouha 2010-05-28 14:52:53 Link
The ABI stands for "Application Binary Interface " and is 
including the ARM Procedure Call Standard (APCS), ARM ELF, ARM DWARF,
etc...

From ARM we can find this definition :

"The specifications to which an executable must conform in order to execute
in a specific execution environment. For example, the Linux ABI for the ARM
Architecture. "

In fact, the both came from EABI architecture with the difference with that
EABI (the new one vs OEABI old one) you have more improvements :

- better implementation for floating point ops that lets using mix harware
& software floating point operators,
- others syscall is in the R7 register to know the caller instead re
reading after an interrupt (SWI) 
- for the v4 & v5 architectures ==> the s3C2440 embed the ARM920T that is
made from the V4
- these differences come at the linker step  where the diffs betwen OEABI
and EABI are made cf 'ARMIHI039B p8'
- data structurations

The most important is that you CAN use both, but you CAN NOT mix them:
- if you used OEABI untill now, go on with it, even though it will be
painfull for you as most of compils are EABI
- using EABI is the better solution for me as most of the libs are
EABI-oriented
Choose one of these both, because using EABI with OEABI libs is not
possible, what I told before should explain why.

If usefull I could post a more precise explanations into my blog
(English/French/Italian only)

=DL=
_______________________________________________
my sources ARM :

[url]http://infocenter.arm.com/help/index.jsp?topic=com.arm.doc.subset.swdev....]

- Debian Wiki

Screwface 2010-05-28 16:11:57 Link
Hello,


Thank you for that information. So I understand it's better to use
arm-none-linux-gnueabi-gcc than the arm-linux-gcc coming from the same
install package.
But I don't know why in some cases (seen on the web)
arm-none-linux-gnueabi-gcc succeed where arm-linux-gcc fails.

Thanks again

mouha 2010-05-31 12:02:41 Link
In which cases did it failed ?

By the way, this looks like that what I said : in some  cases if someone
had compiled with OEABI (libs for example) you will had compatibility
troubles.

=DL=

Reply

Name
eMail (not visible)
Subject (no text only in upper case; no HELP, URGENT...)
Text
HTML tags are not supported and links are generated automatically if they start with http or ftp.
Please submit long source code or log files as attachment (only registered users).
Please enter the number 5945