VisualGDB Version History

This page summarizes the changes added in different versions of VisualGDB

04 Mar 2024 v6.0 Added support for Software Tracing of embedded projects
Added manual scale selection to Live Watch
Added support for tagging USB JTAG debuggers
Added support for selecting specific Keil pack versions
Added support for unlimited software breakpoints in FLASH
Added full support for ARM64 hosts
Clang IntelliSense now uses LLVM 16.0 and fully supports C++23
Optimized the IntelliSense code suggestion popup
Redesigned Code Navigation Bar
Improved error reporting for broken debug methods
Improved GDB command auto-completion
Improved ESP-IDF and nRFConnect configuration editor
Improved header file IntelliSense for CMake projects
Improved smart indentation logic
Redesigned the per-user variable configuration GUI
Redesigned the Visual Watch GUI
Fixed device selection for ESP-ADF projects
Fixed ARMASM argument handling for ARMClang projects
Fixed bit field support for DWARF4 and DWARF5 files
Fixed Raspberry Pi Pico SDK selection GUI
Fixed a crash in the RP2040 PIO debugger
Fixed detection of GDB crashes for embedded projects
Fixed version detection of the new ARMClang compiler
Fixed building of assembly files in Keil projects
Fixed issues with remotely running OpenOCD on Linux
Fixed handling of BSP_ALIAS argument for CMake projects
Fixed IntelliSense for RP2040 Arduino core
Fixed issues with MSBuild projects referencing external sources
Fixed VS freezing caused by timed out backtrace command
Fixed IntelliSense on ARM64 projects
Fixed ESP-IDF unit testing for components with SPIFFS
Fixed a bug causing negative time labels in Live Watch
Fixed logic for overriding build message regexes on project level
Added support for CMSE library generation for MSBuild projects
Embedded projects can now specify additional symbol files
Fixed display issues on systems with non-default ICC profiles
Fixed Embedded Code Coverage for projects using GCC 12.x
Fixed Embedded CMake support for the latest ARMClang toolchain
Fixed recursive filter creation for MSBuild projects on VS2022
Separated mbed/ESP-IDF/NRFConnect Python distributions
Improved support for dark theme
Fixed DEBUG/RELEASE flags for Embedded CMake projects
Fixed compatibility with CoPilot plugin
Fixed backward compatibility with Clang code analyzers
Added support for quickly configuring Outline detail presets
Improved automatic editing of CMakeLists.txt files
Fixed a glitch with unaligned variables in Live Watch
Fast Semihosting now supports bootloader handoff
Improved KConfig compatibility with ESP-IDF 5.2
Added support for exporting hardware register values
Improved usability of Live Tracing Graphs with dark theme
Offline disassembly now works for ESP32 projects
Added support for tabbing out of function calls and strings
26 Oct 2021 v5.6 Added the new CodeExplorer view with RefactorScript support
CodeJumps can now track type instances and allocations
Code suggestions for C-style structs now show relevant functions
Added support for Xilinx Vitis Tools
Added support for Raspberry Pi Pico SDK
Added support for Visual Studio 2022
Added support for running OpenOCD remotely on Linux targets
Added support for MCUXpresso SDK 2.9.0
Added support for ESP-IDF 4.3 and ESP32C3
Fixed compatibility with VS 16.10
Fixed the check for used TCP/IP ports for embedded projects
Open Serial Terminal command can now remember the port number
Fixed parsing of escaped UTF-8 strings in GDB
Clang IntelliSense now recognizes CUDA files
Added supprot for selecting a specific mbed framework version
Added workaround for an issue with disappearing call stack frames
Improved support for FreeRTOS projects with static allocation
Added support for 64-bit FreeRTOS projects
Added support for CMSIS-RTOS v2 interfaces to Real-Time Watch
Fixed an "object disposed" error triggered by idling CMake projects
Fixed apptrace support for ESP32S2 targets
Added support for exporting multiple Live Variables at once
Improved integration with STM32CubeMX
Added a workaround for freezing CMake Language Service
Added support for debugging Raspberry Pi Pico PIO module
Added a workaround for invalid debug info produced by the Keil compiler
STM32CubeMX projects how support editing toolchain settings
Fixed header search path discovery for embedded CMake projects
Improved Real-time Watch interface
Improved code reformatting usability
Imported toolchains can now specify a custom toolchain.cmake file
Improved usability of offline disassembly
Updated Ninja version to 1.10.2
Added support for defining custom debugger setups
Fixed issues with manually overridden host for running gdb
Improved usability of Live Watch
STM32CubeMX workflow now supports multi-core devices
Improved support for asynchronous GDB mode
Fixed issues with SSH compression
Fixed variable expansion for Linux Subsystem
Advanced CMake targets now support alternate deployment names
Improved performance of setting GDB breakpoints
Fixed .hex file generation for CMake-based IAR/Keil projects
Improved IntelliSense performance for recently checked out projects
Fixes in R2 (29 Nov 2021)
Added support for PIC32 devices
Fixed stand-alone CMake project conversion for IAR and Keil
Improved compatibility with mbed
Improved Code Explorer stability
Added support for Xilinx MiroBlaze targets
Fixed integration with the ESP-ADF 2.3
Fixed compatibility with the latest Android Studio
Added support for native GDB pretty-printers
Fixed entity selection for Ctrl-Click navigation
Live Coverage now supports GCC 10.3
Fixed invocation of custom shortcuts via context menu
Fixes in R3 (19 Jan 2022)
Added support for STM8 devices
Added support for displaying AzureRTOS (ThreadX) threads
Added alignment setting for embedded resources
Live Watch now supports bit fields
Live Watch can now restrict the view to current file only
Improved IntelliSense for ESP32C3 devices
Custom Shortcuts can now use the 'ActiveSourcePath' variable
Fixed incorrect handling of special characters in Keil components
Fixed toolchain detection issues on VS2022
Fixes in R4 (27 Jan 2022)
Fixed compatibility with the latest Arduino boards
Fixed issues with custom shortcuts on multiplatform projects
Fixes in R5 (21 Apr 2022)
Added support for generated config files needed by Renesas RA devices
Added GUI for automatically locating missing sources
Improved support for forced includes in CMake projects
Improved the ImportFolder Recursively GUI
Fixed framework reference issues in Atmel START projects
Fixed command-line unit test support for NRFConnect projects
Fixed unit test creation on ESP-IDF 4.4.x
Quick Debug now supports running gdbserver under root
Fixed RemoteSourceCache issues for containers running on localhost
Fixed issues with displaying CPU registers in the Hardware Registers window
Fixes in R6 (6 Jun 2022)
Improved the usability of CodeExplorer filters
Fixed integration with STM32CubeMX 6.5.0
Fixed integration with Xilinx Vitis 2022.01
Fixed Embedded Frameworks page for BSPs with no frameworks
Added support for rsa-sha2-256/512 SSH authentication
Fixed stripping of deployed binaries using custom toolchains
Fixed the "do not deploy versioned binaries" setting
Added support for very long GoogleTest command lines
Added DWARF5 symbol support to Memory Explorer and Live Watch
Optimized CodeJumps and reference searches for huge projects
Fixed code navigation for solutions with multiple remote projects
Test Explorer now skips projects excluded from build
Added support for overriding BIF and XPFM paths for Xilinx platforms
Added support for changing OS version for Vitis projects
Toolchain/remote host substitution now skips unaffected configurations
Fixes in R7 (14 Aug 2022)
Added a command for managing automatic tool window activation
Added support for Raspberry Pi Pico W
Improved Memory Explorer and Live Watch accuracy
Fixed debugging of sources directly accessed via SSH on VS2022
Fixed GUI issues with the nRFConnect SDK selector
Test reports now include test attributes
Fixed outline details filters in Code Explorer
Fixed loading or real-time watch reports with custom events
Optimized Live Watch memory usage for large ELF files
Fixed sudo handling on the latest WSL targets
Fixed GUI glitches with the auto-stretching filter box
Fixes in R8 (22 Aug 2022)
Added a command for plotting large CSV files
Fixed issues with starting debug sessions with Chronometer enabled
Updating VS2022 no longer triggers fonts/colors cache warning
CMake errors caused by too long paths are now reported correctly
Added a custom action for setting internal variables directly
Fixed IntelliSense entity selection window on high-DPI displays
08 Oct 2020 v5.5 Added an Advanced Embedded Project Subsystem
Added GUI for viewing advanced GCC error messages
Added checks for missing packages and tools when opening projects
Added support for mbed unit tests
Added IntelliSense-like suggestions throughout VisualGDB Settings
Added support for inspecting globals without stopping the program
Embedded ARM projects now support code coverage
Added support for the nRFConnect SDK (including nRF91 and nRF53)
Advanced CMake projects now support multiple platforms and configurations
ESP-IDF, Arduino and Mbed projects can now edit advanced properties
CMake projects now allow editing per-file properties
Added support for customizable CMake project layouts
Added support for the IAR compiler
Added support for Atmel START
Added support for ESP-IDF 3.3 and 4.0
Mbed projects can now be profiled
Added suppor for CMake-based Qt projects
Added support for automatically stripping symbols during deployment
Added support for customizing the automatically loaded symbols
Added support for multiple WSL distros
Embedded BSPs can now be referenced by explicit relative paths
Improved usability of the Additional Memories GUI
Mbed projects now automaticaly handle .mbedignore files
Fixed code coverage issues with gcc 9.x
Fixed the invalid display of the "inline gdb stub output" window
Added support for skipping specific updates
Added support for locating missing headers and libraries
Added support for multi-core STM32H7 devices
Added a graphical editor for common embedded configuration files
IAR- and ESP-IDF-based projects now support unit tests
Fixed memory utilization reporting for adjacent memories
Redesigned Quick Debug GUI to work better on High-DPI displays
Added automatic diagnostics of deployment errors
Hardware Registers window now supports background updates
MSBuild projects can now generate .bat files for unattended building
Improved stability and usability of Custom Shortcuts
Added support for importing SW4STM32/STM32CubeIDE projects
Improved performance of build output parsing
Dynamic Analysis and Embeded Profiler now supports RAM builds
Fixed out-of-date status computation for Ninja-based CMake projects
Custom project templates can now automatically substitute project name
Added support for Android NDK r21
Live variable values can now be shown directly in the code
Added a live stack and heap analyzer
Added support for visualizing the state of FreeRTOS objects
Optimized IntelliSense popup performance
Optimized Live Variable performance
Improved automatic troubleshooting of path mapping problems
Added support for ESP-IDF 4.1
Added support for importing LPC-Link setups from MCUXpresso IDE
Moved most temporary files under the .visualgdb subdirectory
Remote MSBuild projects can now generate ninja build scripts
Local MSBuild projects now support object file subdirectories
Improved support for Keil packs stored under %LOCALAPPDATA%
Improved stability of J-Link debug sessions producing heavy output
Added support for the Sipeed Maixduino platform
Improved parsing of linker error messages
Fixed the issue with ninja tool incorrectly reported as missing
Added support for WSL 2
Fixed reliability issues with floating licenses
Fixes in R2 (17 Oct 2020)
Added support for SHA256-based SSH authentication
Fixed live coverage support for Embedded CMake projects
Mbed projects now remember custom hardware register files
Cancelling an SSH connection prevents subsequent connection attempts
Global Arduino settings can now be easily reset via the Settings window
Raw Terminal can now be manually opened even when it's not configured
Added settings for disabling individual project-load-time checks
Fixes in R3 (16 Nov 2020)
Advanced CMake projects for Linux now support unit test targets
Improved the usability of debug-time output windows
Linker script preprocessor now includes forced include files
Improved the reliability of the "Step Into Specific" command
ESP-IDF projects now support integration tests
Fixed symlink creation issues on the latest Windows 10 update
Improved IntelliSense for Arduino Sketch files
Fixes in R4 (3 Dec 2020)
Add commands for copying BSPs and frameworks under source control
Fixed compatibility with NRFConnect 1.4
Improved integration with Visual Studio 16.8.2
Fixed handling of unit test changes for simulation platforms
Fixed go-to-definition command in CMakeLists.txt
Fixes in R5 (25 May 2021)
Fixed compatibility with Visual Studio 16.10
14 Jan 2019 v5.4 Added an advanced ESP-IDF project subsystem
Added support for Ninja build system for CMake projects
Added support for tracing ARM targets with Segger J-Trace
Added support for Arduino projects (AVR, ARM, ESP8266 and ESP32)
Added full integration with Clang-format including a visual style editor
Added support for static stack analysis for ARM targets
Added disassembly view to Embedded Memory Explorer
Added support for debugging CMake Scripts
Added CodeJumps - quick code navigation popups
Added Advanced Mbed Project Subsystem
Added support for the Keil compiler and RTX operating system
MSBuild projects now support custom compilers
Redesigned commonly used GUI for better usability
Added support for stopping on specific C++ exceptions
Significantly improved the ESP-IDF project usability
Fixed compatibility issues with latest Windows 10 Linux Subsystem
Linux profiling and dynamic analysis now works on Linux Subsystem
Raw Terminal can now be shown after programming without debugging
Fixed debug method selection issues
Added support for "Collapse to definition" command
Updated pre-packaged LLDB to version 6.0
Fixed errors with absolute paths in $(IntDir) for MSBuild projects
Updated Clang IntelliSense engine to Clang 6.0
Hovering over a preprocessor macro can now preprocess it in-place
Redesigned header discovery engine for better usability
Added support for ESP-IDF 3.1 and improved overall ESP-IDF usability
Added support for raw C++11 string literals
Line endings unsupported by Clang are now automatically detected
Added API for suspending/resuming advanced semihosting
Added support for case-sensitive Linux Subsystem directories
Android projects now fully support the LLDB debugger
Improved compatibility with Linux targets running busybox
Fixed issues with popup windows shown behind the Visual Studio window
Coverage reports can now exclude system directories
Added support for reporting test results in TFS-compatible format
Added support for Renesas RL78 family
Converted more GUI to High-DPI-friendly WPF framework
Embedded Memory Explorer can now visualize section layout
Improved the usability of the Raw Terminal window
Improved the usability of the Embedded Profiling window
Fixed unit test running on Linux Subsystem
Fixed individual target building with Ninja
Fixed compatibility issues when building projects with msbuild.exe
Fixed delayed header loading via Header Discovery
Added support for VS format modifiers in Watch windows
Added support for resource directories in CMake projects
Improved usability of Solution Explorer view of CMake projects
Added support for searching through all symbols in solution
Arduino projects now allow adding C/C++ sources together with sketches
Fixed compatibility with CMake on Cygwin
Added a new optimized file synchronization engine for Linux projects
Added a project properties page for managing synchronized directories
Improved usability of the Keil-related workflows
Redesigned custom action editing GUI
Added support for reusable custom action list files
Custom actions now use the advanced file synchronization engine
Added a toolbar for ESP-IDF projects
Improved Keil component selector usability
Added support for overriding gdb binary for embedded projects
Hardware Registers window can now display CPU registers
Added support for auxiliary hardware register definition files
Fixes in R2 (18 Jan 2019)
Fixed the workaround of missing permissions for creating Windows symlinks
Fixed incorrect handling of gtest tests with multiple '_' characters in name
Improved embedded thread detection accuracy
Added support for customizing the location of WSL's bash.exe
Fixes in R3 (10 Mar 2019)
Added support for Visual Studio 2019
VisualGDB is now loaded on-demand and does not affect VS startup time
Added support for LZMA-compressed BSPs (~4x smaller downloads)
Added support for ESP-ADF and IDF-based ESP8266 SDK
ESP8266 Arduino projects now support the GDB stub
Improved Clang IntelliSense support for header files
Toolchain testing now checks time difference between Linux and Windows
Fixes in R4 (23 Mar 2019)
Fixed IntelliSense initialization when opening projects via command line
Fixed advanced code tooltips on Visual Studio 2019
Fixed KConfig parsing for ESP-IDF 3.3
$(SolutionPath) variable MSBuild projects is now visible from custom actions
Advanced CMake projects now allow importing virtual targets for debugging
Added support for customizing CMake clean command
Fixed display of the custom actions view in the Output window
Fixed build error display for files accessed via SSH
Fixes in R5 (11 Apr 2019)
Improved scaling of Live Variables
Added support for ESP-IDF 3.3
Fixed MSBuild support for RISC-V targets
Fixed erroneous IntelliSense cache invalidation for files with ambiguous paths
Improved CodeJumps for huge projects
Added support for Teensy Arduino targets
Fixes in R6 (5 Jun 2019)
Added ESP32 Arduino Core support for ESP-IDF projects
Added support for importing CrossWorks projects
Cloned STM32CubeMX projects no longer hardcode absolute paths
Fixed MSBuild project cleaning when using overridden remote host parameters
Fixed errors when creating Linux configurations for VC++ projects
Fixed support for shared Linux folders for advanced CMake projects
Added a quick button for suppressing embedded stack size annotations
ESP-IDF projects now automatically get rebuilt when changing toolchain/IDF version
Fixed embedded instrumentation when using custom FLASH/RAM addresses
Fixed issues with CMake clean mode setting
Fixes in R7 (18 Jun 2019)
Added support for Ctrl-Click navigation for Clang IntelliSense
Improved VisualGDB wizard discoverability in VS2019
Added support for STM32 Arduino targets
Fixes in R8 (19 Jun 2019)
Fixed invalid default update URL for Arduino packages
Fixes in R9 (27 Jun 2019)
Improved source control integration for Arduino projects
Added support for upgrading STM32 projects to new BSP structure
Fixes in R10 (7 Jul 2019)
Added support for the STM32WB devices
Added support for overriding machine/path used for sysroot synchronization
Fixed rendering issues with VS2019 on the latest Windows 10 update
Fixes in R11 (16 Jul 2019)
Added support for STM32MP1 devices
Fixed the "Missing BSP" error occasionally appearing after BSP updates
Fixed incorrect debug session initialization rarely triggered by the new rendering logic
Fixes in R12 (27 Jul 2019)
Added support for the Kendryte K210 chip
30 Sep 2017 v5.3 Added a new CMake Project Subsystem with 2-way synchronization
Added support for accessing sources directly over SSH
Added support for Clang-Powered Static Code Analyzers
Added support for non-SSH target transport plugins
Added a 64-bit build of the Clang IntelliSense Engine
Improved usability of various common GUI
Added support for diagnosing IntelliSense performance
Added support for IntelliSense-only precompiled headers
Go-to-definition now tries to avoid cache rebuild when possible
Background reparsing period is now chosen adaptively
Improved performance of "Parsing References" stage
Added support for "Peek Definition"
Added a context menu command for renaming entities
"override" auto-completion now works same way as in C#
GCC warning pragmas can now be generated via smart tags
Added support for parsing //TODO and other similar comments
Improved support for parsing Doxygen and VS XML comments
Added support for generating Doxygen comment block templates
Added support for filtering redundant targets reported by CMake
Fixed scrolling issues in quick navigation bar
Added support for installing multiple versions of the same toolchain/BSP
File paths in .vcxproj files now use the $(BSP_ROOT) syntax
Toolchain information is now stored globally and inherited by projects
Added support for Team Settings
Streamlined the embedded debug settings GUI
Added a workaround for VS2017 crashes with CMake project creation
Added support for automatically importing STM32CubeMX and IAR projects
Added an option to automatically step over interrupts in embedded code
Added a graphical interface for verifying FLASH memory contents
Added support for specifying C++ standard for new embedded projects
OpenOCD for ARM now shows progress when programming FLASH
Streamlined the new remote host selection control
Added support for embedded integration tests
Added support for Chronometer
Added support for automatically importing Keil projects
Fixed compatibility issues with Kinetis KSDK 2.x
Improved upgrading process for projects created with older versions
Improved reliability of RTOS therading plugin mechanism
Added support for profiling Linux projects
Added support for viewing code coverage for Linux projects
Added Dynamic Analysis for Linux projects
Memory Explorer now shows function and stack sizes directly in code
Advanced CMake Projects are now integrated with TFS
Chronometer now shows elapsed time directly in code
Improved reliability of launching XMing when debugging X11 code
Added convenient GUI for locating missing .so directories on target
Googletest framework now allows grouping tests by class names
Loading symbols via GDB Session window now updates call stack
VS now shows breakpoints added via GDB Session window
Unreadable subdirectories no longer break directory enumeration
Added an option to specify the value for filling gaps in .bin files
Added a global list of excluded files and subdirectories for source uploading
VisualGDB will no longer re-upload imported projects on first build
Improved display of 64-bit modules and AMD64 registers
Fixed coloring for numbers with Clang IntelliSense
Custom shortcuts can now rin in the background
MSBuild templates now include additional settings
Improved the usability of the Raw Terminal Settings page
Fixes in v5.3R2 (11 Oct 2017)
Fixed missing QMake PATH in newly created Qt project
Unit tests now run on Windows 10 Linux Subsystem
Visual Watch supports multi-graph CSV files
Fixed semihosting window visibility bugs
Files outside the main CMake project directory are now reported to SCC
STL type visualizer now shows std::unique_ptr
Fixes in v5.3R3 (13 Oct 2017)
Running under TFS agent now disables various popup dialogs
Fixed broken VisualGDB toolbar buttons
"Suppress interrupts while stepping" is now remembered between sessions
Fixes in v5.3R4 (23 Oct 2017)
Fixed changing MSBuild build host via VisualGDB Project Properties
Fixed TFS building of .vgdbcmake projects
Creating Linux projects from template no longer duplicates files
Advanced CMake Project Subsystem now supports CMake 3.10
Fixed toolchain substitution for MSBuild projects
Fixed a bug with disabling 'multiple BSP versions' option
IntelliSense-only include paths are now stored relative to the project
Vendor Samples with .a files are now created correctly
Fixes in v5.3R5 (27 Oct 2017)
Fixed broken locals window
Embedded Memory Explorer now handles subdirectories correctly
Fixed embedded threading issues when using Segger J-Link
Fixes in R6 (11 Nov 2017)
Added automatic repair for invalid toolchain settings in projects
Disabled --gap-fill option by default due to compatibility issues
Improved handling for 'path too long' errors
Optimized BSP updating process
Fixes in R7 (27 Nov 2017)
Supported changes to LXSS in Windows 10 Fall Creators Update
Ambiguous linker script warnings are now more informative
Fixed incorrect debug-time test selection for GoogleTest framework
Fixes in R8 (17 Dec 2017)
Added support for Android CMake projects
Improved Natvis expression parser
Added automatic diagnostincs for add-in loading issues
Fixed list editor appearance on high-DPI screens
Fixed escaping of mbed macros in Makefiles
Linux MSBuild projects now support absolute source paths
Added a workaround for incorrectly displayed modal windows
Added extensibility API for displaying custom code annotations
31 Oct 2016 v5.2 Added support for unit tests for Embedded, Linux and Android projects
Significantly improved Clang IntelliSense performance
Clang IntelliSense can now automatically repair missing include paths
Find Symbol Results window is now WPF-based and no longer flickers
Find All References now highlights variable assignments differently
The .vgdbsettings files can now be moved arbitrarily
Android Logcat window now has a quick filter
Added an improved memory window
Added support for switching embedded toolchains for existing projects
Improved the performance of the Embedded Thread API
Added support for MSBuild projects
Added transparent FreeRTOS support
Added a new Real-Time Watch feature
Added support for RSA SSH keys
"Program Without Debugging" will now verify the FLASH memory contents
Quick Debug now supports Linux cross-toolchains
Fixed reference highlighting problems on dark theme
VisualGDB Project Properties can now be opened as normal tabbed documents
Added support for importing Embedded CMake projects
Deployment and debug initialization is now done in background
Remote Qt projects now automatically download generated header files
Fixed advanced suggestion list display on high-DPI screens
Natvis engine now automatically resolves typedefs
Improved Natvis performance with large arrays and lists
Default source code location can now be customized for each host
Live variables now support arrays and structures
21 Feb 2016 v5.1 Added support for profiling embedded ARM applications
Added support for debugging Python code on Linux, MinGW and Cygwin
Added support for mbed
Quick Debug now supports embedded applications
Simplified embedded device and toolchain selection in the project wizard
Embedded and Linux projects can now be exported to project templates
Added support for exportable custom action templates
Added basic support for LLDB that is now shipped with VisualGDB
Added support for natvis
Added support for the "step into specific" command
Added support for automatic Virtual Machine management via Vagrant
Added support for debugging Docker containers
Large toolchains and BSPs are now downloaded in multiple threads
Improved the usability of Live Variables and Visual Watch
Added support for selecting arbitrary external memories for embedded projects
Added an improved navigation bar to code windows using Clang IntelliSense
Looking up matching sources for header files is now background
Import Folder Recursively command can now automatically setup include search path
VisualGDB now tries to check out files from VCS before modifying them
Improved stability of automatic environment variable adjusting
Added a VisualGDB Diagnostics Console (in View -> Other Windows)
Added transparent support for the 'signal' command
Added suport for selecting a specific C/C++ version in Project Wizard
Remote file/directory browser now remembers last used directory
Sysroot synchronization now allows skipping arbitrary directories
Changes since Preview 2:
Embedded Profiler now supports instrumentation mode
Improved IntelliSense usability
Fixed various small bugs
Fixes in R3:
Fixed compatibility issues with some 64-bit Android devices
Improved Qt5 support on Raspberry Pi
Fixed problems with detecting Raspberry Pi toolchain location
Fixed various small bugs
Fixes in R4:
Added support for Visual Studio 15 Preview
Fixed compatibility with Android NDK r11b
Fixed various small bugs
Fixes in R5:
Added a workaround for stepping into functions from additional libraries
Added a workaround do the 'run-as' permission bug
Added support for fixing broken NDK r11c gdb binaries
Fixes in R6:
IntelliSense now uses Quick Actions instead of Smart Tags on VS2015+
IntelliSense now automatically replaces "." with "->" for pointers
Fixed several IntelliSense-related bugs
01 Aug 2015 v5.0 Added new Clang-based IntelliSense engine with Code Map and refactroring
Changes since beta 1:
Optimized debugging performance for multi-thread applications
Android Device Compatibility Center can now automatically test toolchains
Added support for debugging Visual Studio 2015 Cross-platform Projects
Added support for importing flavors from Gradle projects
Improved the "Show Containing Type" command on Code Map
Supported "Open Included File" and "Toggle Source/Header" commands
Clang extension warnings are now disabled by default

Changes since beta 2:
Added support for Live Variables
Added support for relocating Embedded BSP files to custom folders
Ctrl-Shift-Insert now allows browsing clipboard history
Embedded projects can now be easily opened by users with different settings
Added support for specifying linker script explicitly
VisualGDB now preserves the tool window order between debug sessions
Added support for automatically breaking long SOURCEFILES lines
FreeRTOS and ST USB stack now works out-of-the-box for STM32
Device reset confirmation can now be disabled
Improved compatibility with Visual Assist X
Improved compatibility with dark color theme

Changes since Beta 3:
Added support for importing CMake projects
Clang IntelliSense now supports Code Snippets
Added support for transferring source subdirectories non-recursively
Include/library path GUI now substitutes sysroot and project directory
Added support for Visual Watch
Go-to-definition in a pure virtual method now searches for overrides
Supported creating cross-compiled Linux projects without connection to target
Fixed issues with trying to upload the busy .log file
Added support for automatic Samba setup on CentOS7
Added support for auto-installing gdbserver if missing on target
Improved installation performance
Custom CFLAGS unsupported by Clang no longer cause error messages

Changes since Beta 4:
Improved IntelliSense usability with aggressive suggestion mode enabled
Added support for ignoring IntelliSense errors within system directories
Improved compatibility with the final release of VS2015
Live Varlables now remember the plot settings between debugging sessions
Path mappings from referenced projects are now used to map paths in error messages
Hexadecimal mode in debugger now affects typedefed character variables
24 Nov 2014 v4.3 Added CMake integration
Added integration with Android Studio
Added ARM semihosting support
Added support for Embedded Thread Plugins
Added support for analyzing GDB command timing
Added support for stepping into embedded entry point
Added support for converting Embedded projects to stand-alone projects
Added support for SSH host aliases and SSH connection searching
Added automatic diagnostics of SSH environment problems
Improved deployment experience
Added support for Visual Studio 2015

Improved usability of Embedded Memory Explorer
Custom Embedded projects now support flag editing via GUI
Fixed vs-android debugger integration on Visual Studio 2012-2013
Added support for Android 4.4W
Added support for attaching to isolated Android processes
Added support for attaching to existing Android tool instances
Added a button to reset Embedded programs
GDBServer failing to bind to a port now leads to an interactive fix dialog
Temporary directory can now be customized for each host
Cross-compiled Qt projects now support sysroot synchronization
Added support for STM32L0 devices

Fixed armeabi-v7a issues when debugging Custom APK files
Imported projects won't try to upload .opensdf files by default
Fixed a bug with missing single quotes in GDB strings
Added detection of known problems with old versions of tar
Fixed a bug with launching gdbserver on machines with custom SSH port
Changing local source directory no longer breaks Makefile settings page
Fixed incompatibility with the MySQL plugin
Fixed bugs in QMake flag editing page

Fixes since Beta 1:
Added a workaround for Android library symbol loading problems
Added support for Android 5.0
Fixed compatibility issues with VisualKernel
Cleaning projects no longer shows errors when target directory is missing
Fixed various issues related to CMake settings editing
Fixed CMake problems on Cygwin
Breakpoints in downloaded source packages are now set correctly
Launching Android projects without debugging now checks secondary EABI
Fixed flag editing for stand-alone embedded projects
Detaching from Android apps now leaves apps running
Changing MCU in an embedded project is now faster
Fixed the 'see output window for more details' message on errors
Fixed Gradle build and manifest finding problems
Added support for Cubieboard toolchain
Fixed shared folder removal on Windows 8.x

Fixes since Beta 2:
Improved project generation for CC3200 devices
Build error reporting now shows more details in verbose mode
Added a workaround for pgrep bugs with long paths

Fixes in R2:
Fixed issues with pthread_setname_np()
Fixed library path update bug in Debug Custom APK dialog
Added support for vs-android native executables

Fixes in R3:
Fixed problems with cross-compiling Qt5 projects
Make/CMake syntax highlighting now works with the dark scheme
IntelliSense include files now use the $(LOCALAPPDATA) variable

Fixes in R4:
Added support for 64-bit Android 5.0
Significantly improved disassembly window usability
19 Jun 2014 v4.2
Added a Raw Terminal window to simplify debugging of embedded projects
Added Embedded Memory Explorer to control RAM/ROM usage
Added integration with Cocos2d-x for Android
Added an Android file manager
Added support for quickly importing an entire folder to Visual Studio solution
Added support for controlling signal handling via Debug->Exceptions menu
Significantly improved GUI appearance on high-DPI screens

Added basic IntelliSense support for Makefiles
Significantly improved usability of the Hardware Register window
Added a register layout visualizer for hardware registers
VisualGDB now supports launch without debugging
Added support for signing release builds of Android apps
Added support for creating and debugging native Android tools
Custom build/debug steps can now transfer files to/from Android devices
All necessary Android packages can now be installed in one step
VisualGDB won't redeploy an App to the same device if it was not modified
Added basic FreeBSD support

Added support for customizing gdbserver executable and environment
Remote program console now supports pausing and saving
Improved handling of file transfer errors for Linux projects
VisualGDB can now automatically search for toolchain/BSP updates
Added support for IPv6
VisualGDB can now automatically kill previous process instance on Linux
Shared folder setup can now be done with sudo
Added transparent support for pkg-config
Installing .Net 2.0 is no longer required if .Net 4.0 is installed
Build settings now allow changing target name and type
Added support for searching/filtering text in GDB Console window
Importing large projects to Solution Explorer is now much faster
Significantly improved the performance of -file-list-exec-source-files

Fixes since Beta 1:
Fixed crashes caused by Embedded Registers window
C++ toolchain testing now uses CXXFLAGS instead of CFLAGS
Added support for Cocos2dx 3.1
Raw terminal settings editor now supports testing connection
Raw terminal can now automatically convert LF to CRLF
VisualGDB Project Properties now work even if Solution Explorer is hidden
Fixed a bug where some generic custom actions required Android license
Fixed bugs with transferring same source directory to multiple machines

Fixes since Beta 2:
Trying to update source list in a read-only makefile now produces a warning
Fixed a bug where some threads were not shown in the Threads window
Embedded Memory Explorer now shows C++ methods correctly
Fixed problems with killing previous instances of a multi-threaded program
Fixed issues with merging signal handling settings from VS project settings
Fixed issues with removing configurations on imported projects
'Detach all' command on an embedded project now leaves the target running
Added a workaround for SSH reliability issues with parallel builds
Changing shared folder settings in one VS window affects all other ones
Fixed shared folder issues on domain-joined computers
Fixed shared folder issues with Ubuntu 14
Executable name is now set correctly when importing custom Linux projects
Fixed Launch Without Debugging issues for configurations with deployment
Fixed issues with editing existing SSH connection settings

Fixes in R2:
Source cache is deleted correctly when cleaning a project
Fixed problems with fetching symbolic links over SSH
Fixed problems with refreshing include cache via alternate SSH port

Fixes in R3:
Fixed incorrect handling of invalid paths when browsing for folders
The BSP location can be now overridden via registry
Improved multi-user support for embedded projects
07 Oct 2013 v4.1 Added support for cross-compiling QT apps on Raspberry PI
Added support for building QT5 apps on Linux
Added support for Beaglebone boards
Added support for Visual Studio 2013
Improved VisualGDB Project Properties dialog
Added support for defining custom per-project shortcuts
Added support for programming Embedded devices without debugging
Improved NEON register view in Android
Creating project configurations automatically adds solution configurations
Quick Debug now allows specifying environment
VS-Android projects can now be debugged with F5
Fixed Memory window bugs

Fixes in R2:
VisualGDB Project Properties command is now shown for vs-Android projects
Fixed project cleaning issues for cross-compiled QT projects
Missing QT5 libraries on Ubuntu 13.x are now detected correctly
Fixed solution configurations when using Project->New Configuration menu
Generated Windows-specific QT files are now skipped when building for Linux
24 Jul 2013 v4.0 Compiler settings can be conveniently configured via Project Properties
Makefiles now support arbitrary amount of independent configurations
IntelliSense is automatically synchronized with changes to compiler settings
Greatly simplified Embedded and Windows project wizards
Improved usability of Embedded Project Properties
Added support for custom per-user project variables
Easy porting: add Linux configurations to Windows projects and vice versa
Android build settings are now easily editable via Project Properties dialog
Sysroot can now be easily synchronized when using cross-compiler toolchains
GDB is now launched under 'sudo' when attaching to Linux processes
Custom steps can now be added to all project types with Custom Edition
Source transfer command can now transfer selected subdirectories
Added support for STM32 microcontrollers
Added support for Segger J-Link debugger
Fixed inline build errors
Disable 'info target' for old GDB versions that does not support it correctly

Changes since Beta 1:
Fixed problems with custom build/debug steps pages
Added support for OpenOCD debugger
Added support for building Android projects using cygwin tools
Fixed a bug with running gdbserver without specifying deployment host
Added a button to conveniently reload all cached includes directories
Build commands can now be skipped when no file changes are detected
Individual custom actions can now be temporarily disabled
Fixed compatibility issues with latest Android bundle
Fixed problems with QT projects
Added support for ST-Link devices
Fixed user variable expansion in various settings
17 Apr 2013 v3.1 Added support for 'Step into new instance' command
Added support for debugging arbitrary APK files
Added support for creating and debugging core dumps
Can now import set build variables from external files
XMing is now auto-installed if missing
Added support for running X11 programs on the main host display
Added support for pthread_setname_np() for Android
Fixed the 'cannot set controlling terminal' bug
Added support for creating QT projects
Added support for copying and saving Linux program output
Added debugging options for vs-android projects
Added support for copying and saving logcat contents
Improved compatibility with MacOS

Changes since Beta 1:
Fixed post-debug command sequence bug in custom configurations
Fixed variable substitution bug in file copying commands
Conditional and hit-count breakpoints are handled correctly from start
Improved general stability
Fixed Android thread name detection for emulator builds
Improved installation speed of Android tools
Fixed IntelliSense cache problems for SSH hosts with explicitly specified port
Fixed IntelliSense issues with Visual Studio 2012
C++-specific include directories are now detected correctly
10 Feb 2013 v3.0 Added full support for building and debugging over SSH.
Added integration with vs-android.
VisualGDB can now automatically manage SMB shares.
Built-in XTerm-compatible terminal based on SmarTTY
Fixed compatibility issues with the new Android tools
Added support for HAXM.
Simplified debugging Linux applications with gdbserver.
A project can now be configured to attach to a process instead of launching.
Simplified the Linux project wizard.
Improved IntelliSense for Linux projects.
Added support for LLVM on Linux.
MinGW32 and MinGW64 can now be auto-installed with one click
Added out-of-the-box support for Raspberry PI
The VisualGDB Project Properties window now supports quick search.
You can now tweak VisualGDB via Tools->Options command in Visual Studio

Changes since Beta 1:
Automatic removal of previous app instances with mismatching signatures
Android menus are shown properly for solutions opened from command line
SMB password is now automatically set when creating remote samba shares
Fixed auto-detection of the new ADT bundle
The "debugging ended without breakpoints" warning shows program output
Fixed include directory caching bug when using build server
New SSH console instances can now be opened from SSH console window
Fixed "Debug->Break All" functionality when using cross-compilers.
Added a global verbosity setting
23 Nov 2012 v2.8 VisualGDB projects can now be debugged with F5
Added a special "Quick debug" feature for Win32 and Linux applications
Added easy attaching to Windows and Linux processes
Missing source files are now auto-downloaded from the Linux machine
Added interactive breakpoint diagnostics feature for Linux and Android
Improved path mapping editor
Fixed ANDROID_SDK_ROOT bug
Fixed unloaded project bug
Fixed crashes on VS2012 when debugging 16-bit MCUs
Added support for removing generated ANT files for Android projects
Improved the sending of source files to Linux machines
VisualGDB now distinguishes main thread and worker threads
Added support for browsing source files discovered by GDB
Android startup activity is now determined correctly
Win32 and Linux projects can now be easily converted to full-custom
Added /v command line option for verbose build output
Added support for Android 4.2
30 Sep 2012 v2.7 Added a hardware register window
Improved usability of the embedded project wizard
Fixed compatibility issues with Visual Studio 2012
05 Sep 2012 v2.6 Added an Android log window
Simplified project wizard
Added workaround for partially unreadable frames
19 Jul 2012 v2.5 Added an interactive Source Cache Manager
Added support for Android 4.1 (including the linker bug workaround)
Added support for running Linux apps in a separate terminal window.
Improved usability of the project wizard
Added support for browsing directories on remote Linux machines
Improved static library debugging experience
Added automatic GCC flag diagnostics to VisualGDB wizard
Fixed $(ProjectDir) bug with error messages
Simplified importing code from a remote Linux machine
Improved error reporting and diagnostic messages for full-custom configurations
05 Jul 2012 v2.4 Added STL container visualization
Android Edition can now debug code executed on startup
Changing debugged program arguments is now easier
Optimized -var-list-children calls
Can cancel frozen GDB commands on Android
Can explicitly terminate Android app on exit
Provided workaround for armeabi-v7a deployment bug
Importing include directories no longer requires tar.exe
Solution folders are now supported correctly.
29 Jun 2012 v2.3 Included a prebuilt gdbserver with NEON support.
Added a workaround for rebinding breakpoints on Android library loads.
Added automatic diagnostics mode for Android launch problems.
15 Jun 2012 v2.2 GDB breakpoint errors are now reported correctly.
Added a workaround for incomplete Android activity names in manifest files.
NDK platforms are now selected correctly.
Fixed problems with armeabi-v7a target.
Added support for advanced binary directory cleaning.
08 Jun 2012 v2.1 Several Android-related improvements:
Added workaround for PATH conflicts for ndk-build
Added support for multi-line LOCAL_SRC_FILES
Added an option to customize ndk-build arguments
03 Jun 2012 v2.0 Introduced new Android Edition
Improved support for static and shared libraries
Fixed incompatibility with pre-SP2 .Net framework 2.0
28 Apr 2012 v1.5 Added an option to disable absolute GDB paths
Added support for sending emulated Ctrl-C events to GDB
Auto-generated makefiles now support assembly files
If GDB hangs during startup, the user can abort debugging session
15 Apr 2012 v1.4 Added support for "note" messages.
Added support for relative error messages in full-custom builds.
Implemented automatic Add-in diagnostics.
Improved project wizard.
07 Apr 2012 v1.3 Added support for gdb 7.4.
Microsoft .Net framework 3.5 is no longer required.
Fixed installation issues with Visual Studio 2005.
Improved MinGW error message parsing.
Internet connection is no longer required to start a trial.
31 Mar 2012 v1.2 Improved appearance on Chinese versions of Windows
Specifying invalid directory in Project Wizard no longer aborts the wizard
When updating from v1.0 the Build Server is updated correctly
27 Mar 2012 v1.1 Added support for Visual Studio 11
Added support for automatic launching and closing of debugging monitors.
DLL load event while executing "step over" no longer causes a break
08 Mar 2012 v1.0 First version