VisualGDB windows not working in VS2019

Sysprogs forums Forums VisualGDB VisualGDB windows not working in VS2019

Viewing 15 posts - 1 through 15 (of 15 total)
  • Author
    Posts
  • #25251
    wtywtykk
    Participant

    Hi,

    I upgraded to vs2019 and VGDB 5.4r9 today. And I found the semihosting window stopped working. When I switch the tab, the window just keep displaying the content of the former tab. It seems that the window wasn’t redrawing itself. Pressing keys  do send the keys to the mcu, but window doesn’t show any change. Other VGDB windows also have this problem.

    I’m using openocd and CMSIS-DAP, and the mcu is stm32f401.

    There’s a video showing the problem. http://45.77.66.194/20190704-232057957.flv

    Thanks!

    Attachments:
    You must be logged in to view attached files.
    #25253
    support
    Keymaster

    Hi,

    This is actually a bug introduced by the new “Optimize rendering for screens with different pixel densities” setting in VS2019, that prevents the tool windows based on the WinForms technology from being shown correctly. We have added a workaround for this in the following build: VisualGDB-5.4.109.3224.msi

    Please let us know if it doesn’t solve the problem.

    #25274
    ExtSol
    Participant

    It’s working. Thank you!

    #25276
    ExtSol
    Participant

    Now, when i start debugging i get a following error:

    Failed to start GDB session

    (gdb begin)
    — GDB Session —
    Thank you for your purchase. Your license details will be loaded and shown in the next 24-48 hours.
    -gdb-version
    =thread-group-added,id=”i1″
    ~”GNU gdb (GDB) 8.0.1\n”
    ~”Copyright (C) 2017 Free Software Foundation, Inc.\n”
    ~”License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html&gt;\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \”show copying\”\nand \”show warranty\” for details.\n”
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html&gt;
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law. Type “show copying”
    and “show warranty” for details.
    ~”This GDB was configured as \”–host=i686-w64-mingw32 –target=arm-eabi\”.\nType \”show configuration\” for configuration details.”
    This GDB was configured as “–host=i686-w64-mingw32 –target=arm-eabi”.
    Type “show configuration” for configuration details.
    ~”\nFor bug reporting instructions, please see:\n”
    ~”<http://www.gnu.org/software/gdb/bugs/&gt;.\n”
    ~”Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/software/gdb/documentation/&gt;.\n”
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/&gt;.
    ~”For help, type \”help\”.\n”
    ~”Type \”apropos word\” to search for commands related to \”word\”…\n”
    ~”Reading symbols from D:\\Drive\\Project\\uc\\WIFIRemote_VisualGDB\\WIFIRemote\\VisualGDB\\Debug\\WIFIRemote…”
    ~”done.\n”
    ~”GNU gdb (GDB) 8.0.1\n”
    ~”Copyright (C) 2017 Free Software Foundation, Inc.\n”
    ~”License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html&gt;\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \”show copying\”\nand \”show warranty\” for details.\n”
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html&gt;
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law. Type “show copying”
    and “show warranty” for details.
    ~”This GDB was configured as \”–host=i686-w64-mingw32 –target=arm-eabi\”.\nType \”show configuration\” for configuration details.”
    This GDB was configured as “–host=i686-w64-mingw32 –target=arm-eabi”.
    Type “show configuration” for configuration details.
    ~”\nFor bug reporting instructions, please see:\n”
    ~”<http://www.gnu.org/software/gdb/bugs/&gt;.\n”
    ~”Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/software/gdb/documentation/&gt;.\n”
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/&gt;.
    ~”For help, type \”help\”.\n”
    ~”Type \”apropos word\” to search for commands related to \”word\”.\n”
    ^done
    -list-features
    ^done,features=[“frozen-varobjs”,”pending-breakpoints”,”thread-info”,”data-read-memory-bytes”,”breakpoint-notifications”,”ada-task-info”,”language-option”,”info-gdb-mi-command”,”undefined-command-error-code”,”exec-run-start-option”]
    -gdb-set disassembly-flavor intel
    ^error,msg=”No symbol \”disassembly\” in current context.”
    -gdb-set print demangle off
    ^done
    set remotetimeout 60
    &”set remotetimeout 60\n”
    =cmd-param-changed,param=”remotetimeout”,value=”60″
    ^done
    target remote :50888
    &”target remote :50888\n”
    ~”Remote debugging using :50888\n”
    =thread-group-started,id=”i1″,pid=”42000″
    =thread-created,id=”1″,group-id=”i1″
    ~”Reset_Handler () at C:/Users/ExtSol/AppData/Local/VisualGDB/EmbeddedBSPs/arm-eabi/com.sysprogs.arm.stm32/STM32F1xxxx/StartupFiles/startup_stm32f103xb.c:572\n”
    ~”572\t\tfor (pSource = &_sidata, pDest = &_sdata; pDest != &_edata; pSource++, pDest++)\n”
    *stopped,frame={addr=”0x08000460″,func=”Reset_Handler”,args=[],file=”C:/Users/ExtSol/AppData/Local/VisualGDB/EmbeddedBSPs/arm-eabi/com.sysprogs.arm.stm32/STM32F1xxxx/StartupFiles/startup_stm32f103xb.c”,fullname=”C:\\Users\\ExtSol\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.stm32\\STM32F1xxxx\\StartupFiles\\startup_stm32f103xb.c”,line=”572″},thread-id=”1″,stopped-threads=”all”
    ^done
    info shared
    &”info shared\n”
    ~”No shared libraries loaded at this time.\n”
    ^done
    mon halt
    &”mon halt\n”
    ^done
    mon reset init
    &”mon reset init\n”
    @”target halted due to debug-request, current mode: Thread \n”
    @”xPSR: 0x01000000 pc: 0x08000460 msp: 0x20005000\n”
    ^done
    load
    &”load\n”
    ~”Loading section .isr_vector, size 0x10c lma 0x8000000\n”
    +download,{section=”.isr_vector”,section-size=”268″,total-size=”16199″}
    +download,{section=”.isr_vector”,section-sent=”268″,section-size=”268″,total-sent=”268″,total-size=”16199″}
    ~”Loading section .text, size 0x400 lma 0x800010c\n”
    +download,{section=”.text”,section-size=”1024″,total-size=”16199″}
    ~”Loading section .init_array, size 0x4 lma 0x800050c\n”
    +download,{section=”.init_array”,section-size=”4″,total-size=”16199″}
    ~”Loading section .fini_array, size 0x4 lma 0x8000510\n”
    +download,{section=”.fini_array”,section-size=”4″,total-size=”16199″}
    ~”Start address 0x8000460, load size 1300\n”
    ~”Transfer rate: 7 KB/sec, 325 bytes/write.\n”
    ^done
    -data-evaluate-expression “sizeof(void *)”
    ^done,value=”4″
    -data-evaluate-expression “sizeof(int)”
    ^done,value=”4″
    -data-evaluate-expression “sizeof(short)”
    ^done,value=”2″
    -data-evaluate-expression “sizeof(long)”
    ^done,value=”4″
    -data-evaluate-expression “sizeof(long long)”
    ^done,value=”8″
    -data-evaluate-expression “sizeof(char)”
    ^done,value=”1″
    -data-evaluate-expression “sizeof(wchar_t)”
    ^error,msg=”No symbol \”wchar_t\” in current context.”
    -data-evaluate-expression “sizeof(float)”
    ^done,value=”4″
    -data-evaluate-expression “sizeof(double)”
    ^done,value=”8″
    -data-evaluate-expression “sizeof(long double)”
    ^done,value=”8″
    info target
    &”info target\n”
    ~”Symbols from \”D:\\Drive\\Project\\uc\\WIFIRemote_VisualGDB\\WIFIRemote\\VisualGDB\\Debug\\WIFIRemote\”.\n”
    ~”Remote serial target in gdb-specific protocol:\n”
    ~”Debugging a target over a serial line.\n”
    ~”\tWhile running this, GDB does not access memory from…\n”
    ~”Local exec file:\n”
    ~”\t`D:\\Drive\\Project\\uc\\WIFIRemote_VisualGDB\\WIFIRemote\\VisualGDB\\Debug\\WIFIRemote’, file type elf32-littlearm.\n”
    ~”\tEntry point: 0x8000460\n”
    ~”\t0x08000000 – 0x0800010c is .isr_vector\n”
    ~”\t0x0800010c – 0x0800050c is .text\n”
    ~”\t0x0800050c – 0x08000510 is .init_array\n”
    ~”\t0x08000510 – 0x08000514 is .fini_array\n”
    ~”\t0x20000000 – 0x20000000 is .data\n”
    ~”\t0x20000000 – 0x2000001c is .bss\n”
    ^done
    -data-evaluate-expression “&_estack”
    ^done,value=”0x20005000″
    -var-create – * “*((void **)0x20004ffc)”
    ^done,name=”var1″,numchild=”0″,value=”0x8000491 <Reset_Handler+48>”,type=”void *”,has_more=”0″
    -var-assign “var1″ 0x64ab982e
    ^done,value=”0x64ab982e”
    -data-evaluate-expression “\*\(\(void\ \*\*\)0x20004ffc\)”
    ^done,value=”0x64ab982e”
    -break-insert -f main
    ^done,bkpt={number=”1″,type=”breakpoint”,disp=”keep”,enabled=”y”,addr=”0x080003a0″,func=”main”,file=”WIFIRemote.c”,fullname=”D:\\Drive\\Project\\uc\\WIFIRemote_VisualGDB\\WIFIRemote\\WIFIRemote\\WIFIRemote.c”,line=”7″,thread-groups=[“i1″],times=”0″,original-location=”main”}

    — openocd —
    C:\Users\ExtSol\AppData\Local\VisualGDB\EmbeddedDebugPackages\com.sysprogs.arm.openocd\bin\openocd.exe -c “gdb_port 50888” -c “telnet_port 50889” -f interface/stlink.cfg -f target/stm32f1x.cfg -c init -c “reset init” -c “echo VisualGDB_OpenOCD_Ready”
    Open On-Chip Debugger 0.10.0 (2019-06-25) [https://github.com/sysprogs/openocd]
    Licensed under GNU GPL v2
    For bug reports, read
    http://openocd.org/doc/doxygen/bugs.html
    Info : auto-selecting first available session transport “hla_swd”. To override use ‘transport select <transport>’.
    Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
    Info : clock speed 1000 kHz
    Info : STLINK V2J31S7 (API v2) VID:PID 0483:3748
    Info : Target voltage: 3.228024
    Info : stm32f1x.cpu: hardware has 6 breakpoints, 4 watchpoints
    Info : Listening on port 50888 for gdb connections
    target halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x08000460 msp: 0x20005000
    VisualGDB_OpenOCD_Ready
    Info : Listening on port 6666 for tcl connections
    Info : Listening on port 50889 for telnet connections
    Info : accepting ‘gdb’ connection on tcp/50888
    Info : device id = 0x20036410
    Info : flash size = 64kbytes
    target halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x08000460 msp: 0x20005000
    target halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x08000460 msp: 0x20005000
    target halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x08000460 msp: 0x20005000

     

    What can i do?

    #25277
    ExtSol
    Participant

    but i reinstall VisualGDB-5.4r9-trial everyting is ok, with the starting post problem “When I switch the tab, the window just keep displaying the content of the former tab”

    after install the workaround, i get the same error

    • This reply was modified 5 years, 5 months ago by ExtSol.
    #25279
    ExtSol
    Participant

    My solution for this issue:

    I download older version of Visual studio (downgrade to 2017) and VisualGDB-5.4r9-trial debugging feature working fine.

    #25282
    wtywtykk
    Participant

    Hi,

    The workaround just works fine for me. My environment is: ARM toolchain 7.2.0/8.0.1/r3; STM32BSP 2019.06; OpenOCD 20190625-0.10.0

    #25283
    ExtSol
    Participant

    Hi,

    Yes, worked for me too, but now, stop working, dont know why 🙁

    Versions:

    GCC: 7.2.0

    GDB: 8.0.1

    BSP: 2019.06

    OpenOCD: 20190625-0.10.0

    Visual Studio: 2017 (15.9.13) / 2019 (16.1.5)

    #25284
    support
    Keymaster

    It’s hard to say what is going on as the log you attached is truncated. Please try using the latest build here: VisualGDB-5.4.110.3225.msi

    Then enable diagnostic logs as shown here: http://visualgdb.com/support/logsubmit

    Then please attach a screenshot of the error message and the full diagnostic log produced by VisualGDB and we help you get it to work.

    #25288
    ExtSol
    Participant

    I following the instructions:

    The issue is the some.

    Here is the screenshot: https://imgur.com/a/t0PQL2w

    Here is the source code: https://pastebin.com/shuhrcNK

    And i uploaded the log file.

    Attachments:
    You must be logged in to view attached files.
    #25291
    support
    Keymaster

    Thanks, this looks like something GUI-related (the actual error is “Invoke/BeginInvoke cannot be called” shown on the screenshot).

    Please try using View->Other Windows->VisualGDB Diagnostics Console to narrow this down. I.e. enable debug logging, reproduce the problem and share the diagnostic output from the diagnostic console.

    #25294
    ExtSol
    Participant

    Just a moment,

    Visual Studio 2017 + VisualGDB-5.4.110.3225.msi are working fine.

    only VS 2019 + VisualGDB-5.4.110.3225.msi not working.

    I procedure the log which your request and i will try to reinstall VS 2019

    #25296
    ExtSol
    Participant

    Here is the diagnostic results:

    Initializing assemblies: 9 msec
    Registering factories: 75 msec
    D:\Drive\Project\uc\WIFIRemote_VisualGDB\WIFIRemote\WIFIRemote\WIFIRemote.vcxproj is a VisualGDB project. Loading VisualGDB…
    Initializing VisualGDB 5.4.110.3225
    Checking fonts/colors: 9 msec
    Level 2 initialization: 616 msec
    Checking if a VisualGDB-based project is being loaded…: 837 msec => Loading VisualGDB
    ShouldRedirectToVisualGDBImpl(): D:\Drive\Project\uc\WIFIRemote_VisualGDB\WIFIRemote\WIFIRemote\WIFIRemote-Debug.vgdbsettings vgdb://TargetPath=D:\Drive\Project\uc\WIFIRemote_VisualGDB\WIFIRemote\VisualGDB\Debug\WIFIRemote
    Searching for active configuration for WIFIRemote\WIFIRemote.vcxproj…
    Trying fast lookup…
    Found! Configuration name = Debug
    Searching for active configuration for WIFIRemote\WIFIRemote.vcxproj…
    Trying fast lookup…
    Found! Configuration name = Debug
    Searching for active configuration for WIFIRemote\WIFIRemote.vcxproj…
    Trying fast lookup…
    Found! Configuration name = Debug
    No RTOS found in D:\Drive\Project\uc\WIFIRemote_VisualGDB\WIFIRemote\VisualGDB\Debug\WIFIRemote
    Launching gdbserver…
    Launching C:\Users\ExtSol\AppData\Local\VisualGDB\EmbeddedDebugPackages\com.sysprogs.arm.openocd\bin\openocd.exe -c “gdb_port 56379” -c “telnet_port 56380” -f interface/stlink.cfg -c “transport select hla_swd” -f target/stm32f1x.cfg -c init -c “reset init” -c “echo VisualGDB_OpenOCD_Ready”…
    [+46567] ExecuteRawCommand(-gdb-version, f)
    [+36] GDB command result:^done
    [+0] ExecuteRawCommand(-list-features, f)
    [+0] GDB command result:^done,features=[“frozen-varobjs”,”pending-breakpoints”,”thread-info”,”data-read-memory-bytes”,”breakpoint-notifications”,”ada-task-info”,”language-option”,”info-gdb-mi-command”,”undefined-command-error-code”,”exec-run-start-option”]
    [+0] ExecuteRawCommand(-gdb-set disassembly-flavor intel, f)
    [+0] GDB command result:^error,msg=”No symbol \”disassembly\” in current context.”
    [+0] ExecuteRawCommand(-gdb-set print demangle off, f)
    [+1] GDB command result:^done
    [+0] ExecuteRawCommand(set remotetimeout 60, c)
    [+11] GDB command result:^done
    [+0] ExecuteRawCommand(target remote :56379, c)
    [+14] ExecuteRawCommand(info shared, c)
    [+0] GDB command result:^done
    [+0] ExecuteRawCommand(mon halt, c)
    [+10] GDB command result:^done
    [+13] GDB command result:^done
    [+0] ExecuteRawCommand(mon reset init, c)
    [+29] GDB command result:^done
    [+1] ExecuteRawCommand(mon report_flash_progress 1, c)
    [+13] GDB command result:^done
    [+7] ExecuteRawCommand(load, c)
    &”load\n”
    ~”Loading section .isr_vector, size 0x10c lma 0x8000000\n”
    +download,{section=”.isr_vector”,section-size=”268″,total-size=”139633″}
    +download,{section=”.isr_vector”,section-sent=”268″,section-size=”268″,total-sent=”268″,total-size=”139633″}
    ~”Loading section .text, size 0x108c lma 0x800010c\n”
    +download,{section=”.text”,section-size=”4236″,total-size=”139633″}
    ~”Loading section .init_array, size 0x4 lma 0x8001198\n”
    +download,{section=”.init_array”,section-size=”4″,total-size=”139633″}
    ~”Loading section .fini_array, size 0x4 lma 0x800119c\n”
    +download,{section=”.fini_array”,section-size=”4″,total-size=”139633″}
    ~”Loading section .data, size 0x64 lma 0x80011a0\n”
    +download,{section=”.data”,section-size=”100″,total-size=”139633″}
    ~”Start address 0x8001080, load size 4612\n”
    ~”Transfer rate: 12 KB/sec, 922 bytes/write.\n”
    ^done
    (gdb)
    [+362] GDB command result:^done
    [+2] ExecuteRawCommand(-data-evaluate-expression “sizeof(void *)”, f)
    [+8] GDB command result:^done,value=”4″
    [+0] ExecuteRawCommand(-data-evaluate-expression “sizeof(int)”, f)
    [+10] GDB command result:^done,value=”4″
    [+0] ExecuteRawCommand(-data-evaluate-expression “sizeof(short)”, f)
    [+11] GDB command result:^done,value=”2″
    [+0] ExecuteRawCommand(-data-evaluate-expression “sizeof(long)”, f)
    [+0] GDB command result:^done,value=”4″
    [+0] ExecuteRawCommand(-data-evaluate-expression “sizeof(long long)”, f)
    [+1] GDB command result:^done,value=”8″
    [+0] ExecuteRawCommand(-data-evaluate-expression “sizeof(char)”, f)
    [+0] GDB command result:^done,value=”1″
    [+0] ExecuteRawCommand(-data-evaluate-expression “sizeof(wchar_t)”, f)
    [+1] GDB command result:^done,value=”4″
    [+0] ExecuteRawCommand(-data-evaluate-expression “sizeof(float)”, f)
    [+0] GDB command result:^done,value=”4″
    [+0] ExecuteRawCommand(-data-evaluate-expression “sizeof(double)”, f)
    [+0] GDB command result:^done,value=”8″
    [+0] ExecuteRawCommand(-data-evaluate-expression “sizeof(long double)”, f)
    [+0] GDB command result:^done,value=”8″
    Searching for active configuration for WIFIRemote\WIFIRemote.vcxproj…
    Trying fast lookup…
    Found! Configuration name = Debug
    [+24] ExecuteRawCommand(info target, c)
    [+7] GDB command result:^done
    [+2] ExecuteFrameSensitiveCommand(-data-evaluate-expression “&_estack”, -1, -1)
    [+0] ExecuteRawCommand(-data-evaluate-expression “&_estack”, f)
    [+9] GDB command result:^done,value=”0x20005000″
    [+0] ExecuteFrameSensitiveCommand(-var-create – * “*((void **)0x20004ffc)”, -1, -1)
    [+0] ExecuteRawCommand(-var-create – * “*((void **)0x20004ffc)”, f)
    [+1] GDB command result:^done,name=”var1″,numchild=”0″,value=”0x80010b1 <Reset_Handler+48>”,type=”void *”,has_more=”0″
    [+0] ExecuteRawCommand(-var-assign “var1″ 0x61d7663b, f)
    [+2] GDB command result:^done,value=”0x61d7663b”
    [+0] ExecuteFrameSensitiveCommand(-data-evaluate-expression “\*\(\(void\ \*\*\)0x20004ffc\)”, -1, -1)
    [+0] ExecuteRawCommand(-data-evaluate-expression “\*\(\(void\ \*\*\)0x20004ffc\)”, f)
    [+1] GDB command result:^done,value=”0x61d7663b”
    [+0] ExecuteRawCommand(-break-insert -f main, f)
    [+3] GDB command result:^done,bkpt={number=”1″,type=”breakpoint”,disp=”keep”,enabled=”y”,addr=”0x08000fb4″,func=”main”,file=”WIFIRemote.c”,fullname=”D:\\Drive\\Project\\uc\\WIFIRemote_VisualGDB\\WIFIRemote\\WIFIRemote\\WIFIRemote.c”,line=”8″,thread-groups=[“i1″],times=”0″,original-location=”main”}
    [+1612] ExecuteRawCommand(-gdb-exit, f)
    [+19] GDB command result:^exit

    #25299
    ExtSol
    Participant

    I repaired VS 2019 install and work fine. Then create new project, not work again.

    Repaired again, and create new project, now works fine… this is a random error… A not have any idea why doing this.

    Please analize this issue

    #25317
    support
    Keymaster

    Thanks for the log file. It looks like some combination of settings is preventing VisualGDB from showing some of the tool windows before updating its state.

    We have added more diagnostic logging to this build: VisualGDB-5.4.110.3226.msi

    Please try reproducing the problem with it and send us the updated log from the VisualGDB Diagnostics Console.

Viewing 15 posts - 1 through 15 (of 15 total)
  • You must be logged in to reply to this topic.