[Development] [Windows] State of the Qt6 natvis file
Jörg Bornemann
joerg.bornemann at qt.io
Mon Mar 3 12:16:03 CET 2025
On 2/28/25 5:53 PM, Nicolas Arnaud-Cormos wrote:
>> Embedding into the DLLs doesn't cut it, unfortunately, as Kai already
>> pointed out. But we could add CMake code that embeds the natvis files
>> in the user's binaries (as Marcus already wrote).
> Here be dragons!
> I'm not an expert, but I suspect your natvis license prevent from
> integrating into any customer binaries using the free version of Qt...
> or at least it's a very gray area.
The natvis files are currently licensed under:
LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
The reason for that is most probably that this is the default license
for the vstools repo. I don't see a reason to be that restrictive. We
should maybe treat this as build system file and use commercial+BSD3 instad.
>> We never continued with this, because we reconsidered and wanted to
>> add the natvis files to the Qt repositories instead. Here's a deferred
>> change that does this: https://codereview.qt-project.org/c/qt/qtbase/
>> +/560899
> What does deferred mean here?
> In my book, it usually means "nice to have when someone will have
> time", which is basically never ;)
It could mean that we'll resume work on that "when it becomes more
important" or "more people care about this". Looks like the latter
already became a thing.
> Interesting, I was wondering if it was possible to do automatic tests of
> natvis files... guess it's probably very difficult without instrumenting
> Visual Studio itself.
For Qt VS Tools, we have a Squish instance running. One idea would be to
test the debug visualizers with that.
>> We can probably improve things already by ditching the testing
>> attempt, but keep in mind that we're dealing with three different
>> natvis dialects:
>> - full blown VS natvis
>> - reduced (or just old?) natvis of cdb
>> - severely reduced natvis subset of cppdbg for VS Code
>>
>> The cdb one isn't that important, unless Qt Creator starts to use that.
> I would ditch both cdb and cppdbg and focus only on Visual Studio and
> cppvsdbg.
That would exclude VS Code users on non-MSVC platforms.
But for starters one could focus on the VS thing.
Cheers,
Joerg
--
Jörg Bornemann | The Qt Company
More information about the Development
mailing list