[ISSUE] Local Compiler not found - "ARM gcc version 5.3.1 or later required"

I’ve been using Workbench for a while and can perform cloud compile/flash etc, but local compiling fails. I’ve followed instructions to put my device in DFU mode but Workbench reports that the compiler cannot be found:

bash-4.4$ which arm-none-eabi-gc
which: no arm-none-eabi-gc in (… and extensive path list …)

Any ideas? Thanks.

Assuming you already have, but to make sure, you need to configure your project for the desired platform and device OS version via
image
Then you can try
image
followed up by
image

I’ve tried that but still no joy. After going through that sequence I get the following message:

make[1]: C:/Users/====/.particle/toolchains/gcc-arm/5.3.1/bin/arm-none-eabi-gcc: Command not found
…/build/arm-tools.mk:61: *** "ARM gcc version 5.3.1 or later required, but found ". Stop.
make: *** [C:\Users====.particle\toolchains\buildscripts\1.5.0\Makefile:62: flash-all] Error 2
The terminal process terminated with exit code: 2

You can also try
Particle: Reset Environment
then repeat the steps above

When this also doesn’t help you can post the non-confidential data of
Particle: Audit Environment

for @m_m to have a look at and advise further.

BTW, could it be that your redacted User name contains blanks?

thanks @ScruffR :pray:

i would suggest you flip the order of those commands - that is: run Particle: Audit Environment first, then if you notice any fields like ok: false, run Particle: Reset Environment and see if that helps any.

if it does not, go ahead and share the non-sensitive bits of the audit report here and we can take it from there :+1:

and, yes, spaces in paths are a gotcha / footgun atm - see here:

1 Like

Thanks, it’s now working. :grinning: I used Reset Environment and then a few iterations of install/uninstall compiler toolchain until it worked.

Thanks again, Arnie

1 Like

I’m having this exact problem. It looks like I can’t get an install of gcc-arm@5.3.1 no matter how many times I reset the environment. Any help would be appreciated. Is there a way to do a manual install of this?

    "localCompiler": {
        "ok": false,
        "dependencies": [
            {
                "id": "deviceOS@1.4.0",
                "ok": true
            },
            {
                "id": "gcc-arm@5.3.1",
                "ok": false
            },
            {
                "id": "buildtools@1.1.0",
                "ok": true
            },
            {
                "id": "buildscripts@1.7.1",
                "ok": true
            },
            {
                "id": "openocd@0.11.2-adhoc6ea4372.0",
                "ok": true
            }
        ]
    },
    "platform": {
        "os": "linux",
        "type": "Linux",
        "release": "5.0.0-21-generic",
        "arch": "x64",
        "path": {
            "key": "PATH",
            "value": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
        },
        "homeDir": "/home/dygear",
        "particleDir": "/home/dygear/.particle",
        "localCompilerToolchainDir": "/home/dygear/.particle/toolchains"
    },

I’m running a clean install of Pop_OS! 19.04 as my Ubuntu install also wouldn’t work for this and the cloud compile wasn’t working. Transient issue?

Have you seen this
https://docs.particle.io/support/particle-tools-faq/workbench/#linux-tips

1 Like

@ScruffR nope, I had never seen that before. After running … sudo apt-get install gcc-multilib libncurses5:i386 … I could now compile on my 64-bit install of PopOS. Thanks!

2 Likes

It works for me installing 32 ELF libs on my 64 bit os:

test exe with:

file arm-none-eabi-gcc
arm-none-eabi-gcc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.8, stripped

apt-get install ia32-libs

https://unix.stackexchange.com/questions/378301/linux-executable-fails-with-file-not-found-even-though-the-file-is-there-and-i