Binary compatibility

From Openmoko

(Difference between revisions)
Jump to: navigation, search
m (Category: -Hardware, +CPU)
 
(3 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Arm architecture comes in three incompatible flavours. Hardware stays the same, but libc/linker etc are not compatible due to different calling convention.
+
Arm binary level calling conventions come in three incompatible flavours. Hardware stays the same, but libc/linker etc are not compatible due to different calling convention. Code compiled on one version will
 +
generally fail on another version.
  
 
Arm - OABI. The old one, and the one openmoko OM2007.1.
 
Arm - OABI. The old one, and the one openmoko OM2007.1.
Line 7: Line 8:
 
Arm - big endian.
 
Arm - big endian.
  
[[Category:Hardware]]
+
[[Category:CPU]]
[[Category:OpenMoko]]
+

Latest revision as of 21:54, 15 September 2008

Arm binary level calling conventions come in three incompatible flavours. Hardware stays the same, but libc/linker etc are not compatible due to different calling convention. Code compiled on one version will generally fail on another version.

Arm - OABI. The old one, and the one openmoko OM2007.1.

Arm - EABI. The new one, used by OM2007.2 and later versions. Should be slightly faster. Angstrom distribution also uses this. (See http://www.angstrom-distribution.org/unstable/images/fic-gta01/20070524/ )

Arm - big endian.

Personal tools

Arm architecture comes in three incompatible flavours. Hardware stays the same, but libc/linker etc are not compatible due to different calling convention.

Arm - OABI. The old one, and the one openmoko OM2007.1.

Arm - EABI. The new one, used by OM2007.2 and later versions. Should be slightly faster. Angstrom distribution also uses this. (See http://www.angstrom-distribution.org/unstable/images/fic-gta01/20070524/ )

Arm - big endian.