On Debian and derivatives, the package you’re looking for is gcc-arm-none-eabi:
apt install gcc-arm-none-eabi
To find this out yourself in future, install apt-file, update your indexes and use it to search for commands:
apt install apt-file
apt-file update
apt-file search bin/arm-none-eabi-gcc
Answer from Stephen Kitt on Stack ExchangeIn Eclipse -> Preferences -> C / C++ -> Build -> Build Variables:
Create 1 variable named GCC_EABI, type= Directory, value= /usr/local/gcc-arm-none-eabi-4_9-2014q4/bin
In Eclipse -> Preferences -> C / C++ -> Build -> Environment:
Add -> Name = PATH , value = ${GCC_EABI}
In case someone reads this later (like I just did) this works, however the real answer is here
Essentially you need to go to Eclipse -> Preferences -> C/C++ Build -> Tools Paths Add the path (in my case /Users/${USER}/armtools/install/bin) to the Toolchain folder
[SOLVED] Arm-none-eabi-gcc not found when building firmware on Linux
CMake cannot find `arm-none-eabi-g++`
c - Program "arm-none-eabi-g++" not found in PATH, Program "arm-none-eabi-gcc" not found in PATH - Stack Overflow
ERROR: the arm gcc program arm-none-eabi-gcc could not be found
I found the solution based on the discussion available at https://unix.stackexchange.com/questions/377345/installing-arm-none-eabi-gcc and the documentation available on https://mynewt.apache.org/latest/get_started/native_install/cross_tools.html#installing-the-arm-cross-toolchain.
The name and structure of the software changed over time. The arm-none-eabi-gcc is gcc-arm-none-eabi now, and so on.
$ sudo apt-get remove binutils-arm-none-eabi gcc-arm-none-eabi
$ sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install gcc-arm-none-eabi
$ sudo apt-get install gdb-arm-none-eabi
And finally, to verify the downloads, you can run the following commands:
arm-none-eabi-gcc --version
arm-none-eabi-g++ --version
arm-none-eabi-size --version
In /etc/apt/sources.list, make sure the lines with universe are uncommented.
Re-run apt update and (as long as you have a working internter connection) it should work.
You can install arm-none-eabi-gcc on MSYS2 using its package manager.
Start MSYS2 using mingw64.exe (or the equivalent shortcut) and then install the toolchain by running:
pacman -S mingw-w64-x86_64-arm-none-eabi-gcc
Now arm-none-eabi-gcc should be on your PATH without any additional work.
If you downloaded arm-none-eabi-gcc separately from MSYS2, then after starting your MSYS2 shell, you need to add whatever directory contains arm-none-eabi-gcc.exe to your PATH environment variable by running a command like this:
export PATH=$PATH:/c/Users/path/to/bindir/
You can test it by running arm-none-eabi-gcc in the shell with no arguments, and also running which arm-none-eabi-gcc.
The main place to download such a toolchain is here:
https://developer.arm.com/Tools%20and%20Software/GNU%20Toolchain