Loading...
 

Zephyr project on STM32

   Zephyr Workbench, a VSCode extension to manage Zephyr on STM32.
It enables users to easily create, develop, and debug Zephyr applications.
Main features:
  • Install host dependencies.
  • Import toolchain and SDK.
  • Create, configure, build and manage apps.
  • Debug STM32.
You can directly download it from the VSCode marketplace
For more details, visit the Zephyr Workbench

System Workbench for STM32


Issue with 1.12.0 for macOS and not being able to find arm-none-eabi-gcc

I was having some problems getting a CubeMX program to compile, which ended up being missing double quotes on packed and weak but that has been reported to ST.

Anyway, in trying to fix THAT problem, I updated to 1.12.0, got around ST’s issue and ended up with another issue where Eclipse would fail to compile my code with:

/bin/sh: arm-none-eabi-gcc: command not found
make: *** Src/gpio.o Error 127

After digging around I found that the PATH variable had been set to:

/Applications/Eclipse.app/Contents/Eclipse/plugins/fr.ac6.mcu.externaltools.arm-none.macos64_1.12.0.201611241417/tools/compiler/bin

and the compiler collection is actually stored in:

/Applications/Eclipse.app/Contents/Eclipse/plugins/fr.ac6.mcu.externaltools.arm-none.macos64_1.12.0.201611241417/tools/compiler/gcc-arm-none-eabi-5_4-2016q2/bin


After adjusting the PATH variable, my code compiles.


Please let me know if this is a problem on ST’s side and I’ll report it there, but the variable doesn’t show up in the .cproject file.


Hope this helps,
Andrei from The Great White North
(as seen on the embedded.fm podcast and blog)

Hi Andrei,

Looks like something goes wrong during the ARM toolchain installation, expected tree should be :

 
$ tree -L 2 fr.ac6.mcu.externaltools.arm-none.linux64_1.12.0.201611241417/tools/         
|-- compiler
|   |-- arm-none-eabi
|   |-- bin
|   |-- lib
|   `-- share
`-- gcc-arm-none-eabi-5_4-2016q2-20160622-linux.tar.bz2


Adjusting the PATH will works until the next update, stay with this solution if you fell comfortable with this.

Otherwise you could try to remove the compiler/ folder and build again one of your projects, it will automatically reinstall the toolchain at the expected place. If not please attach your workspace .log file to this topic. (workspace/.metadata/.log)

In Eclipse, I had completely removed all installed software from fr.ac6, deleted the software download sites from the list, recreated the site entry from the link on this site, and let Eclipse install everything unmolested.

Andrei


I don’t know if it helps but here’s the error message I got when installing the update from Eclipse on OSX:

Failed to extract /Applications/SystemWorkbench.app/Contents/Eclipse/plugins/fr.ac6.mcu.externaltools.arm-none.macos64_1.12.0.201611241417/tools/gcc-arm-none-eabi-5_4-2016q2-20160622-mac.tar.bz2 to /Applications/SystemWorkbench.app/Contents/Eclipse/plugins/fr.ac6.mcu.externaltools.arm-none.macos64_1.12.0.201611241417/tools/compiler (tar returned ‘1’)

java.lang.Throwable


David


Hi,

I had this problem also. Out of desperation I installed Eclipse Oxygen release in a clean environment (I was previously running Eclipse Neon). After that, I installed OpenSTM into the new environment and then everything magically worked.

I hope this helps.

Interesting, I am using Mars.2 and had updated.

I also noticed that there WAS a mac version of 1.11, but the 1.12 seems to be agnostic (which didn’t parse in my brain).


An addendum to this item; when I try and start the debugger, it bombs with:

Error with command: /Applications/Eclipse.app/Contents/Eclipse/plugins/fr.ac6.mcu.externaltools.arm-none.macos64_1.12.0.201611241417/tools/compiler/bin/arm-none-eabi-gdb --version
Cannot run program “/Applications/Eclipse.app/Contents/Eclipse/plugins/fr.ac6.mcu.externaltools.arm-none.macos64_1.12.0.201611241417/tools/compiler/bin/arm-none-eabi-gdb”: Unknown reason

This appears to be the result of the symbol openstm32_compiler_path being incorrect as well. If I insert a Pre-build step of
echo ${openstm32_compiler_path}

It prints:
echo /Applications/Eclipse.app/Contents/Eclipse/plugins/fr.ac6.mcu.externaltools.arm-none.macos64_1.12.0.201611241417/tools/compiler/bin

As was the case with the PATH variable, there is a folder missing in the openstm32_compiler_path .


Andrei


Hi Andrei,

While waiting for an official updated version of SW4STM32, I did choose to fix the problem by copying everything in /Applications/Eclipse.app/Contents/Eclipse/plugins/fr.ac6.mcu.externaltools.arm-none.macos64_1.12.0.201611241417/tools/compiler/gcc-arm-none-eabi-5_4-2016q2 one folder up, that way everything is available on both the old PATH and the new one.

David


The v1.12 patch1 recently published on the update-site should permanently fix this issue.

  1. Install the update
  2. Delete the corrupted compiler/ folder
  3. Restart SystemWorkbench


You should see the new installation process at startup, and once completed, the expected tree as shown above.

That seems to have fixed it.

I ended up uninstalling and reinstalling everything. But V 1.12.1 put everything in the correct place.

Thank you,
Andrei

Hi,
Could someone tell where to find v1.12 patch1 or how to update to v1.12.1 ?
From eclipse Help->”Installation Details” I can see the “System Workbench for STM32 - GNU Tools ARM Embedded” is version 1.12.0 and update says nothing to update.