5

I've seen both arm-linux-gnueabi- and arm-linux-eabi- triplets. From the little I could find it seems gnueabi is a "sub-abi" of eabi. I would like to know what exactly are the differences.

I'm trying to get clang to compile for QNX target, so I'm wondering which abi to use, I tried gnueabi and it worked just fine for a small program.

After inspecting clang's source I see there isn't much difference between the two, except that for "eabi" std::size_t is unsigned long on Darwin, while "gnueabi" always uses unsigned int, independent of OS.

Sergio Martins
  • 897
  • 2
  • 8
  • 18
  • 2
    Someone can name the compiler whatever they like. So there is no way to know from the name. Generally, 'eabi' is a bare metal *newlib* version and 'gnueabi' is a Linux glibc version. At least this is the way `gcc` works; `clang` is generally a different compiler (normally used by llvm)? – artless noise Dec 13 '13 at 20:44
  • one possible difference might be floating point handling (software vs hardware vs software if hardware fails) – Stian Skjelstad Apr 19 '16 at 08:58

0 Answers0