-
-
Notifications
You must be signed in to change notification settings - Fork 356
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: make firmware check fatal error by default #5749
Conversation
Buildind libsimulator and simulator not does not work anymore outside the docker image. The check for the ARM toolchain is still done and terminates the configure. I think this is useless for a host build. Using the above option the configure complains about:
This looks strange. |
Try clearing your build folder - you are probably having issues with CMake caching. Since the check is running after a non-firmware configure would be terminated (see line 480), it should not be evaluated on a host build. And make sure you define it completely - |
I think you have to declare is as an
|
Except it is not an "option". You can simply ignore the warning, as not all automatic warnings are important - better still it looks like I can do something somewhat similar just to make sure it is "used". But in this case, the warning is simply telling you that your configuration settings have caused that variable to not be used - as by configuring for a companion build you are skipping the block of code where it is used. Keep in mind... the flag is ONLY needed if you are building firmware with an unsupported compiler version... it does not care about any of the other builds. e.g. on MSYS/Windows - so not the docker container ;)
Note the host C++ compiler version is 14.2.0, thus technically "unsupported" ... but as you will see on the configure stage...
... the version used for the firmware (arm-none-eabi) is 14.2.1 (supported) ... and again the version that will be used by native is 14.2.0 ... so I didn't need to pass the USE_UNSUPPORTED_TOOLCHAIN override flag as I am using a supported version of the firmware compiler. If I did, I would correctly get the warning that the variable isn't used... |
My point was that the configure step is aborted even if you don't build the firmware, only native. I think the check against the ARM toolchain should be done later in the |
Clearly there is something more to this, as this is not what I am seeing on either Linux or Windows/MSYS (with valid firmware compiler version and invalid host compiler version), not does it make any sense given it is after when the native_build check should abort the check. Have you started from a new/empty build folder (eliminating cached configuration settings)? What is your build environment, toolchain, what exact steps to reproduce? i.e. some logs please! 😅😂 |
I do not want to build the firmware, only native simulator. I go thru the usual steps incl.
I shouldn't do a Please excuse me for the misunderstanding ... (I should have read the logs more carefully). |
Ok, I see what is going on now... thanks for that. So when you have the wrong firmware compiler version, but aren't actually interested in compiling the firmware, rather than running
so that you configure 'only' for the native toolchain. Otherwise, you would need the There are also scoped target commands you can run for building firmware, simulator, but in practise I've not needed to run them... c.f. #1736 e.g.
|
Thanks for pointing me to #1736 : that was the info I was looking for. |
Summary of changes:
-DUSE_UNSUPPORTED_TOOLCHAIN=Y
is specified as a build option to force it to be skipped.