Forum Replies Created
-
AuthorPosts
-
support
KeymasterHi,
Do you mean VisualGDB 5.3r6? If not, please update to the latest version. If yes, we can confirm that we tested it with VS2017 15.4.4 and found no problems. Please try repairing the VS installation and reinstalling VisualGDB.
support
KeymasterHi,
As MacOS is different from Linux in many ways, is much less popular among our users and often introduces breaking changes, we don’t guarantee that VisualGDB will support the latest version out-of-the-box (although it automatically detects and applies a few workarounds).
Our best advice would be to try installing gdb from macports and configuring VisualGDB to use it. If this doesn’t work, please post the details here and we will walk you through setting it up.
support
KeymasterHi,
The setting is correct. Please use the embedded memory explorer to track what contributes to the program size as shown here: https://visualgdb.com/tutorials/arm/dependencies/
support
KeymasterHi,
Most likely you are not using newlib-nano, so most of your program size comes from the standard library. Please try switching to the nano version.
Please also check the Embedded Memory Explorer to see where does the size come from. E.g. your program might contain some binary resources or other artifacts that cannot be optimized.
support
KeymasterHi,
The warning message is actually legitimate: you have included multiple .ld files in your project, but didn’t specify via VisualGDB Project Properties which one is the main one. VisualGDB arbitrarily guesses the first one (and guesses it wrong).
Please specify the linker script explicitly via VisualGDB Project Properties or change the file type of the unused linker script to “Does not participate in build”:

Attachments:
You must be logged in to view attached files.support
KeymasterHi,
We would advise switching the output to disassembly and checking the assembly code that got produced. Most likely the GCC optimizer has optimized out some instructions modifying global variables.
If this is the case, we would advise declaring those variables with the ‘volatile’ keyword to explicitly tell the optimizer that each access to them should be preserved.
support
KeymasterHi,
Please follow this tutorial to adjust the softdevice memory for Nordic devices: https://visualgdb.com/tutorials/arm/nrf51/softdevice_memory/
support
KeymasterHi,
This should normally be fixed by including the script in the template by adding it to the project before exporting it.
However previously you have mentioned that you cannot do this because the build system complains. Please provide us the details on any errors you encounter when you try to add the second script before exporting the template.
support
KeymasterHi,
Looks like you are trying to debug a project that is not built. Please build it first.
If it doesn’t help, please attach the entire gdb log as described here and we can help you understand what is going on.
support
KeymasterHi,
This is a known issue. The GCC compiler used by VisualGDB is not 100% compatible with the Keil compiler and uses a completely different syntax for placing parts of your program at fixed addresses.
We have a detailed tutorial explaining the entire process here: https://visualgdb.com/tutorials/arm/bootloader/
It is also worth mentioning that VisualGDB can be configured to use the Keil compiler instead of GCC. Please follow this tutorial for details: https://visualgdb.com/tutorials/arm/keil/
support
KeymasterHi,
Thanks, we have noted this down and will try to include support for running tests on MinGW in the next major build.
Regarding the code coverage, VisualGDB 5.3 actually works very well with gcov. You can simply enable coverage reports via VisualGDB Project Properties (it works only for Linux projects) and it will automatically run gcov, build a searchable coverage database and map file paths so that you can view coverage information directly in the code:

support
KeymasterHi,
Please, please, please always provide more details about the errors you encounter. We would absolutely love to help you, but it is almost impossible to guess what is going on without knowing the exact error messages. VisualGDB build system is complex and it could be broken by incorrect settings in tens of different options, each one resulting in a different error message. Unfortunately we cannot provide much help without knowing the exact message shown by the build system.
support
KeymasterNo problem, we can help you get GUI to work – this is 100% supported.
VisualGDB will only include a file in the template if both of the following holds for it:
- The file resides inside the project directory (or one of its subdirectories)
- The file is explicitly included in the project in Solution Explorer
E.g. the following files won’t be included:
- Any sources outside the project directory (with relative paths starting with ..\)
- Linker scripts unless you explicitly add them to SolutionExplorer and copy under the project directory
- Any header files included from your sources, but not present in Solution Explorer or residing outside the project directory
Hope this helps. If not, please let us know which file you are trying to include, where is it located and how does it look in Solution Explorer (i.e. its item type and relative path).
support
KeymasterHi,
OK, please try this build: http://sysprogs.com/files/tmp/VisualGDB-5.3.16.1933.msi
We have added new options under C/C++->Advanced:
- Additional Options (C files)
- Additional Options (C++ files)
support
KeymasterHi,
OK, that looks very much like the cycle counter is not available on your device or is not accessible from the software (that is the case on the STM32F7 devices we tested). Please follow the tutorial linked above to add a workaround – it’s very simple and involves overriding one function that will use one of the general-purpose timers for counting the cycles.
-
AuthorPosts