Debugging an application on Vm Ware with CDB in QtCreator



  • I'am trying to debug the qt application which i made and placed on Vm Ware. I compiled application with msvc2013 debug configuration, and installed in on vmware using 'windeployqt' so it works fine. I followed this guide

    https://www.vmware.com/support/ws5/doc/ws_devices_serial_host_app_to_vm.html

    https://www.vmware.com/support/ws5/doc/ws_devices_serial_advanced_example_debugging.html

    So i created '\.\pipe\com_1' named pipe. I'm running the cdb on the virtual machine with arguments: cdb -server npipe:pipe=\.\pipe\com_1 -v C:\tests\clean_deploy\app.exe on the Virtual Machine. I'am assuming that cdb will use the \.\pipe\com_1 to listen for the connections. (is that correct?) On my OS(Windows 7) i run the qt->debugging->attach to remote cdb session and set the connection string like this npipe:server=server,pipe=\.\pipe\com_1 And i get in qt log:

    Debugging Started
    Debugging Finished

    And nothing happens. Please help, how do you debug with CDB from QtCreator another application on the VmWare Virtual Machine which have the cdb server running?



  • Your main problem is that you are trying to connect your client to a pipe on your client machine, because of an incorrect pipe name.
    see https://msdn.microsoft.com/en-US/en-en/library/windows/desktop/aa365783(v=vs.85).aspx for an explanation how to name your pipes

    And you also need to follow the description in the "Start a CDB Remote Session" Dialog. Especially the part with the Qt Creator CDB extension.



  • Thanks for the reply. I have read the link about the pipe and tried a couple of other things (they didnt' work anyway )

    First, i renamed the external pipe in VmWare settings to : superpipe22. I made sure, that the pipe is connected to vmware. Also the name of the computer in VmWare operating system (windows 8) is : SUPERPC
    Then i changed the server creation first like this:
    **
    cdb -server npipe:pipe=\S
    UPERPC\pipe\superpipe22 C:\tests\clean_deploy\clean_deploy\myapp.exe**

    and tried to connect with
    npipe:server=SUPERPC,pipe=\SUPERPC\pipe\superpipe22

    npipe:pipe=\SUPERPC\pipe\superpipe22

    npipe:server=SUPERPC,pipe=superpipe22

    npipe:server=SUPERPC,pipe=superpipe22

    Then i went to cdb folder, manually ran it and tried:

    1

    cdb -QR \\SUPERPC
    Servers on \\SUPERPC:
    Unable to query \\SUPERPC

    2

    cdb -QR \\SUPERPC\pipe\superpipe22
    Servers on \\SUPERPC\pipe\superpipe22:
    Unable to query \\SUPERPC\pipe\superpipe22

    3

    cdb -QR \\.\pipe\superpipe22
    Servers on \\.\pipe\superpipe22:
    Unable to query \\.\pipe\superpipe22

    So cdb cannot access the VmWare even trough the pipe. I think the problem is that VmWare is not reachable under the name SUPERPC. I know its not the topic of this forum, but can you suggest any tips, on how i can access my VmWare OS by the servername? My VmWare is not using bridged connection it has its own network with its own modem etc. (That's why i'm testing my application there).


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.