What is the difference between arm-linux-gcc and arm-none-linux-gnueabi and arm-linux-gnueabi toolchains?
Do they compile differently?
the eabi stands for the compilation of code which will run on bare metal arm core. the gnueabi stands for the compilation of code for linux.
GNU C compiler for the arm64 architecture This is the GNU C compiler, a fairly portable optimizing compiler for C. This is a dependency package providing the default GNU C cross-compiler for the arm64 architecture.
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, gnueabihf For 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.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With