Hello,
When debugging Golden Cheetah, using Visual Studio Code on Ubuntu, I get stuck in a high percentage of tries, due to GC is based on Qt framework. Unless the piece of code I am interested in is a formula, or some code independent of Qt, I cannot usually progress.
Qt objects implementation is complex, and the debugger cannot show their inner properties in an easy way (neither in a complex way, I am afraid).
So, something as easy as checking the underlying string in a QString object, for example, becomes a impossible task (at least form me).
VSCode is a very powerful and versatile code editor and is able to assist in the capability to watch complex objects in the debugger: it understands
natvis files (a kind of dictionary to map complex data to some human readable, when debugging).
After researching a bit looking fo natvis files for Qt objects (
KDAB and the
Qt site, and then other examples in other forums), I have not been able to get a good configuration.
This screenshot shows the best I have got from a QString object (variable 'QString name'):
In the endd, I cannot see the text inside the variable at all.
I wonder whether this is the usual way people that are developing GC debug the code. To me, it sounds very difficult, perhaps because I do not know the code and needs more data to understand the execution.
Or maybe I should not use VSCode and should another IDE.
I have discarded any option that implies recompiling the code: adding lines of code to print data, for example, due to the complexity of the project, it takes a tme to compli, then I need to transfer source code and binary to a computer where I can execute,....
It is just to have a bit understandig about how GC experts debug, if I can fetch some idea that helps.
Thanks anyway for reading this.