cancel
Showing results for 
Search instead for 
Did you mean: 

CubeIDE: Imported Eclipse 'C' Project incorrectly defines __cplusplus

STM32 CubeIDE v1.5.1; Build: 9029_20201210_1234 (UTC)

The same Eclipse Project as:

https://community.st.com/s/question/0D53W00000Y2lIsSAJ/cant-usecreate-debug-config-for-oss7-stack

It is a 'C' Project, but the CubeIDE defines __cplusplus:

0693W000007ZDYEQA4.png 

Which, as you can see, messes-up the codes checks to see if C++ is being used!

If I manually delete that definition, all is fine.

The problem does not happen when opening the project in a "normal" Eclipse Neon 3.

So why is CubeIDE adding this?

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.
33 REPLIES 33

When you "delete" from within the IDE, that just takes things out of the workspace - there is an option to also delete them from the filesystem ...

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.

Wow - that is a radical move... :)

I don't even have a theory as to why this did not work in the first place for you.

Can you re-produce it in some way again? Maybe you could export an old tag of the project, where it is not working, assuming the project is under version control? If so, I can try it on my side...

Hi Mattias, I'm running into the issue again. I have attached 4 versions of the .cproject file, saved in various states of trying to get the MCU choice box to become enabled. I am using IDE v1.8.0.

Any help is appreciated!

I ran into this problem again today, and this time it didn't matter how many times I removed and re-created the project in the project tree, the MCU selection was always greyed out. The only thing that fixed the issue was to delete all .*project files.

Further, when I was finally able to select an MCU using the workaround method, the options for FPU were all set to "software". Odd given this part has a hardware FPU.