What is the difference between arm-linux-gcc and arm-none-linux-gnueabi and arm-linux-gnueabi toolchains?
Do they compile differently?
What is the difference between arm-linux-gcc and arm-none-linux-gnueabi and arm-linux-gnueabi toolchains?
Do they compile differently?
Toolchains have a loose name convention like arch[-vendor][-os]-abi
.
arch
is for architecture: arm, mips, x86, i686...vendor
is tool chain supplier: apple, os
is for operating system: linux, none (bare metal)abi
is for application binary interface convention: eabi, gnueabi, gnueabihfFor your question, arm-none-linux-gnueabi
and arm-linux-gnueabi
is same thing. arm-linux-gcc
is actually binary for gcc which produces objects for ARM architecture to be run on Linux with default configuration (abi) provided by toolchain.
Some nice reading: Toolchains.
arm-none-linux-gnueabi
that actually compile with slightly different results. You can check this with gcc -print-sysroot
–
Unheardof arm-linux
seems ambiguous to me. I've not checked, and it might be that in current gcc that's a synonym, but I'll bet it's meant something different in the past. Besides, the triplet only specifies the default config, and the toolchain could have been built with other settings enabled; in that case, I would choose the generic triplet rather than have it lie. –
Catechol © 2022 - 2024 — McMap. All rights reserved.