We’re trying to get away from requiring all developers to have to have Visual Studio and VisualGDB installed in order to build our firmware. Let the individual developer choose their own IDE and debugger. But some devs want to keep using VisualGDB because they’re used to it and we haven’t found anything that integrates as nicely with a IDE.
I moved our build configuration over to CMake, and I’m trying to figure out how to make the Advanced CMake functionality in VisualGDB work. The first hurdle I’m running across is VisualGDB wants to use its own version of CMake, rather than the system installed on.
Is there a way to make VisualGDB use the system installed CMake rather than the pre-packaged one? Or even better, is there a way to EXPLICITLY tell VisualGDB on how to build the target and where the .elf file is going to be? I’ve been playing around with Advanced CMake and it seems like VisualGDB is trying to tack on it’s own options to the cmake configure and build commands.
The version of CMake installed by VisualGDB is 100% compatible with the regular CMake. The only differences introduced by it are related to accurate reporting of the code model (e.g. various statements affecting each target’s CFLAGS) and to debugging (stepping through CMakeLists.txt files).
For projects built locally VisualGDB always tries to use our CMake fork, as it makes the settings editing GUI more accurate (VisualGDB can better locate and edit existing statements when you change target settings via target properties). Either way, we have added a setting to disable this behavior to the following build: VisualGDB-22.214.171.12447.msi. The new setting is located under Tools->Options->VisualGDB->CMake->Use pre-built CMake for Local Builds.