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


bug in SW's make.exe (v3.81) ? : "Malformed target-specific variable definition" error [fixed]

Hello !
When trying to compile applications from STM32CubeF7, I’ve got a “make” error in reading a subdir.mk file :
“Malformed target-specific variable definition”.
It happens for example in STemWin_HelloWorld application.

It might be a bug in old make version due to a too long command line, as seen here :
http://savannah.gnu.org/bugs/?36106Question
I fixed it with replacing SW’s make with this one, which is version 4.1 :
http://www.equation.com/servlet/equation.cmd?fa=makeQuestion

Hope it helps...
Maybe AC6 could update the make tool ?
Thank you
Best regards
Xavier

France

Hi,

Thanks for the bug report. Could you please post the offending subdir.mk file, so that we can work out a workaround to avoid problems with the standard version of make (version 4 is quite uncommon and we only provide our own make on windows, on Linux we use the standard one, which is usually 3.81 or 3.82 but not 4.1).

Bernard (Ac6)


The problematic line in the subdir.mk file is :

Middlewares/STemWin/Config/GUIConf.o: K:/_STM32_/stm32cubef7/STM32Cube_FW_F7_V1.3.0/Projects/STM32746G-Discovery/Applications/STemWin/STemWin_HelloWorld/Src/GUIConf.c


The offending subdir.mk file is in :
........../STM32746G_DISCOVERY/Debug/Middlewares/STemWin/Config/subdir.mk

My OS is Windows Vista.

Xavier


Well, after more investigation, I see that the problem comes from an exotic folder name (_STM32_ surrounded by three “=” which I can’t reproduce here due to formatting codes) !
So no problem with make 3.81 if paths have no fancy names... just letters, numbers and _ .
Sorry to bother !
Xavier

France

Hi Xavier

OK, now I understand: an ‘=’ in the right-hand side of a dependency in a Makefile define a target-dependent variable, whose name is the left-hand side of the equal sign and the value is the right-hand side of the equal. This variable will be valid only when executing commands to build the current target (what is on the left of the ‘:’) or one of its dependencies.

The problem there was that K:/ is definitly not a valid variable name... If it had been, you will not have had the error, but the build will have failed for another reason, as a dependency would have missed for your target...

So, it’s right: avoid fancy folder names, and especially always omit ‘=’ signs in a folder name (by the way its the first time I see such a folder name...)

Regards,

Bernard (Ac6)


Thank you for your explanation Bernard !
No more fancy here, promised ! wink
Xavier


 

Newest Forum Posts

  1. reservation car service Seattle by Jamesprede, 2025-05-01 10:06
  2. Last day: drone bonus by Danielrug, 2025-04-19 16:55
  3. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-25 07:37
  4. SPI on Nucleo_STMH533RE by royjamil, 2025-03-23 11:31
  5. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-23 09:33
  6. Configuring DMA for ADC in SW? by sam.hodgson, 2025-03-04 12:58
  7. Insightful Perspectives on This Subject by davidsycle, 2025-03-04 05:45
  8. Build a project in "release" mode by info@creosrl.it, 2025-02-20 18:12
  9. Build a project in "release" mode by info@creosrl.it, 2025-02-20 17:05
  10. Build a project in "release" mode by tang, 2025-02-20 10:36

Last-Modified Blogs