Skip to main content
Dave Jones
Associate III
March 29, 2018
Question

Release build not defining compiler

  • March 29, 2018
  • 22 replies
  • 5744 views
Posted on March 29, 2018 at 22:22

I am using the latest TrueStudio with a project for STM32L452 created using the latest STM32CubeMX.

The created project contains both a debug and a release build. When I set the debug as active and look in one of the files that contains conditional compiles based on the compiler (core_cm4.h) I see that the lines for __GNUC__ are not grayed out. So obviously that compiler is defined somewhere.

However when I set the release build as active and look at that same file, all the conditional statements based on compiler are grayed out, and the final 'else' for 'unknown compiler' is the one not grayed out. So clearly __GNUC__ is not being defined anywhere.

Also, when I go to the build settings and select the release build I see a warning at the top that says 'Orphaned configuration. No base extension cfg exists for com.atollic.truestudio.exe.release.1518366166'. I don't get that when I select the debug build.

So, what does that warning actually mean, and why is the compiler not defined in the release build? (and where is it normally defined?)

This topic has been closed for replies.

22 replies

Markus Rudolf
Associate III
March 7, 2019

looks like the forum ate another post of mine. I posted another one presumably while you were answering mine. So mine is gone now. This whole thing *****. Why can't ST have a normal discussion forum like myPHPBB based or whatever.

alister
Senior III
March 7, 2019

Appears to have lost one of mine too. I'd replied your earlier post.

Try:

  1. The delete the bad config, create a new one copied from the good one and fix the deltas.
  2. Suspecting a tool compatibility problem, using latest STM32CubeMX and TS versions, delete the .project and .cproject and re-generate.
  3. Continuing the compatibility idea, delete the .metadata from the root and the .settings from each project directory and the .project and .cproject. BTW none of the .metadata should be version controlled. Then re-generate. You'll have to build a new workspace. The workspace should be at the root of your repo. Then Import..., Existing Projects...