Is there any particular reason you're using Arduino IDE 1.5.4? That is a very outdated version that was only ever intended to be used for beta testing.
I've never heard of "Arduino IDE ver 1.5.4++". I don't know why you won't just answer my question. If you can't explain why you're using a beta version of the Arduino IDE from 6 years ago, I'm going to have to assume that you don't have any good reason for it. So update to Arduino IDE 1.8.9, downloaded from this page: http://www.arduino.cc/en/Main/Software
That's just some helpful information that tells you which libraries the Arduino IDE is using. The "(legacy)" only means that the library is in the 1.0 Arduino library format, rather than the newer 1.5 Arduino library format. The 1.0 library format is still fully supported so it's no problem to use those libraries with the newest Arduino IDE versions. This is not an error and it has nothing to do with your problem. That is a red herring which has caused you to spend a lot of time downloading and installing many outdated versions of the Arduino IDE.
This is the error you need to be focusing on:
Ittiluk:
Cannot run program "{runtime.tools.arm-none-eabi-gcc.path}/bin/arm-none-eabi-g++": CreateProcess error=2, The system cannot find the file specified
Try this:
(Using Arduino IDE 1.8.9) Tools > Board > Boards Manager
Wait for downloads to finish.
Click on "Arduino SAMD Boards (32-bits ARM Cortex M0+) by Arduino"
Click "Install".
Wait for the installation to finish.
Click "Close".
Try compiling again.
The missing arm-none-eabi-gcc will be installed along with Arduino SAMD Boards, which will hopefully fix the error.