Qt World Summit: Register Today!

[SOLVED] Qt 4.8: Step into Qt's source code on Windows using MSVC

  • Hi,

    I was wondering whether there is a way to step into Qt's source code on Windows using MSVC? Right now, if I try to trace into Qt's source code, it will go into whatever code is located in a Qt header file, but not in anything which is located in Qt .cpp file. I have donwloaded Qt's source code, but I was surprised to find out that is located in a complete different place to where Qt's header files are. Anyway, any help on this (and, to some extent, the same on Linux and Mac OS X) would be much appreciated...

    Cheers, Alan.

  • Stepping into the source files using msvc with Qt is possible. Just checked with an application to be sure. Tested on Win 7 64 bit, msvc 2005 and Qt 4.7.2. The only difference may be that it is a commercial license.

    The Qt directory consists beside of a couple of folders an "include" and "src" folder. I know that most of the includes are simply opening other includes. Therefore, I would assume that they are ending up in the "*.h"-files of the source folder.
    During this short test, I had to enter a couple of includes as well and they were all opened in the src folder.

    Oh, I am using also vsaddin. Do you have this installed? Unfortunately, this does not work with msvc express versions.

  • I guess I should have mentioned that I use MSVC 2010 Express SP1 with Qt Creator, so no vsaddin for me or anything.

  • Yes, vsaddin cannot be used with msvc express versions sicne they do not allow addins.

    I have never tried Qt creator with an msvc tool chain. AFAIK there are some more threads concerning msvc tool chain and Qt creator. You may want to check those.

  • Just to be clear, my project builds fine within Qt Creator using MSVC (and CMake in fact). It's just that if I build a debug version of my project, I can trace into it my code, but not Qt's code (unless it's a header file, as opposed to a .cpp file). I have looked around, but haven't, so far, found anything that would allow me to do it, but I can't imagine that it's not possible...?!

  • Did you link your code to the Qt debug dll's?

    i.e. QtCored4.dll not QtCore4.dll, etc.

  • Yes, as confirmed when debugging my code (i.e. Qt Creator tells me that QtCored4.dll was loaded rather than QtCore4.dll, etc.).

  • Solved, see http://bit.ly/Opco9O

Log in to reply