{"id":27410,"date":"2020-02-18T21:08:59","date_gmt":"2020-02-18T20:08:59","guid":{"rendered":"https:\/\/sysprogs.com\/w\/?p=27410"},"modified":"2020-04-21T19:29:05","modified_gmt":"2020-04-21T18:29:05","slug":"visualgdb-5-5-preview-4-is-out","status":"publish","type":"post","link":"https:\/\/sysprogs.com\/w\/visualgdb-5-5-preview-4-is-out\/","title":{"rendered":"VisualGDB 5.5 Preview 4 is out"},"content":{"rendered":"<p>Today we have released VisualGDB 5.5 Preview 4 focusing on various GUI and usability improvements. In this post I will give you an overview of the new version&#8217;s highlights.<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/qd-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27412\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/qd-1.png\" alt=\"\" width=\"986\" height=\"792\" \/><\/a><\/p>\n<p><!--more--><\/p>\n<h2>IntelliSense-like Popups across VisualGDB Project Properties<\/h2>\n<p>If you have a non-trivial project setup with VisualGDB, that involves multiple users, or custom actions, you have probably been to a situation where a misspelled variable or path caused weird errors and took some time to locate. The new VisualGDB build makes such error much less likely by introducing suggestion popups across the VisualGDB Project Properties and QuickDebug GUI:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/popups.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27413\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/popups.png\" alt=\"\" width=\"1092\" height=\"817\" \/><\/a><\/p>\n<p>The suggestions will show the values of the internal variables, as well as file and folder paths both on Windows and Linux sides, depending on the setting you are editing:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/sense2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27414\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/sense2.png\" alt=\"\" width=\"1116\" height=\"817\" \/><\/a><\/p>\n<p>We have also redesigned the Build Variables view making it searchable and adding the display of variable modifiers:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/vars.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27415\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/vars.png\" alt=\"\" width=\"786\" height=\"493\" \/><\/a><\/p>\n<h2>Redesigned Quick Debug GUI<\/h2>\n<p>The <a href=\"https:\/\/visualgdb.com\/w\/tutorials\/tag\/quickdebug\/\">Quick Debug Window<\/a> allows using VisualGDB to easily debug projects built with other IDEs, command line tools, or just launch gdb, manually connect it to the target and let Visual Studio take over the session once it&#8217;s ready. This feature has been around since the early versions of VisualGDB and was gradually getting more and more settings, making them harder to navigate.<\/p>\n<p>The new VisualGDB 5.5 Preview 4 includes a fully redesigned Quick Debug window with better grouping of settings and native support for the high-DPI displays. It also allows debugging embedded devices without installing the SDKs for them, as long as you can manually configure the underlying debug tool (such as OpenOCD):<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/qd-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27412\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/qd-1.png\" alt=\"\" width=\"986\" height=\"792\" \/><\/a><\/p>\n<h2>Deployment Error Diagnostics<\/h2>\n<p>If you have ever used a cross-compiler to build code for an embedded Linux board, you know how much faster it is compared to native builds. However, it is also easier to break, since insufficient permissions or invalid paths could easily trigger weird SSH\/SCP errors. Previously VisualGDB was simply reporting those errors &#8220;as is&#8221;, often leading to the dreaded\u00a0<strong>LIBSSH2_ERROR_CHANNEL_FAILURE<\/strong> message. The new Preview 4 is smarter than that. When it encounters an SSH channel error, it will automatically check for common error conditions and will display a much more meaningful message:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/deploy.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27416\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/deploy.png\" alt=\"\" width=\"754\" height=\"196\" \/><\/a><\/p>\n<p>It will also allow rechecking the entire deployment setup and will show all the deployment issues in all related projects at once:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/err.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27417\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/err.png\" alt=\"\" width=\"786\" height=\"270\" \/><\/a><\/p>\n<h2>Better Hardware Register Viewer<\/h2>\n<p>We have also redesigned the Hardware Registers window, improving its view on high-DPI displays. If your target supports background memory reads (most ARM targets do),\u00a0 you can now tag some registers as &#8220;live&#8221; and VisualGDB will update their contents even when the target is running:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/hwregs-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27419\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/hwregs-1.png\" alt=\"\" width=\"716\" height=\"419\" \/><\/a><\/p>\n<p>VisualGDB will also show history popups for registers that were recently changed. It will now also allow quickly viewing the recently used registers, not just the ones explicitly marked as favorite:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/history.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27420\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/history.png\" alt=\"\" width=\"722\" height=\"419\" \/><\/a><\/p>\n<h2>Generating .bat files for MSBuild projects<\/h2>\n<p>If you were hesitant to upgrade your projects from GNU Make to MSBuild because you need to build them on a machine without Visual Studio, you don&#8217;t need to worry about this anymore. VisualGDB 5.5 Preview 4 can automatically generate a batch file that can build your project by running the compiler directly:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/batch.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27421\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/batch.png\" alt=\"\" width=\"786\" height=\"543\" \/><\/a><\/p>\n<h2>Single-file Builds for Advanced CMake Projects<\/h2>\n<p>The new Preview 4 build also supports building, assembling, or preprocessing individual source files for Advanced CMake-based projects. This works with both GNU Make and Ninja (including CMake-based ESP-IDF projects):<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/singlefile.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27422\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/singlefile.png\" alt=\"\" width=\"1344\" height=\"356\" \/><\/a><\/p>\n<h2>Better Custom Shortcuts<\/h2>\n<p>If you have not been using VisualGDB&#8217;s <a href=\"https:\/\/visualgdb.com\/tutorials\/custom\/shortcuts\/\">Custom Shortcuts<\/a> to automate repeating project maintenance tasks, consider giving it a try. If you have, we have a small improvement for you. VisualGDB now allows selecting which shortcuts should be displayed in complex multi-project solutions. You can choose between the active project (i.e. the project of the current source file), the startup project, or all VisualGDB-based projects in the solution:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/rsrc.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-27423\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2020\/02\/rsrc.png\" alt=\"\" width=\"1381\" height=\"715\" \/><\/a><\/p>\n<h2>Give It a Try<\/h2>\n<p>VisualGDB 5.5 preview 4 includes many other improvements. It supports importing SW4STM32\/STm32CubeID projects, enables profiling RAM-based builds, improves build message parsing performance and much more. You can download the new preview build on the <a href=\"https:\/\/visualgdb.com\/download\/\">download page<\/a>. If you have any feedback, don&#8217;t hesitate to reach us out via our <a href=\"https:\/\/sysprogs.com\/support\/\">support form<\/a> or the <a href=\"https:\/\/sysprogs.com\/w\/forums\/forum\/visualgdb\/\">VisualGDB forum<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today we have released VisualGDB 5.5 Preview 4 focusing on various GUI and usability improvements. In this post I will give you an overview of the new version&#8217;s highlights.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[1],"tags":[859],"_links":{"self":[{"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/posts\/27410"}],"collection":[{"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/comments?post=27410"}],"version-history":[{"count":3,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/posts\/27410\/revisions"}],"predecessor-version":[{"id":27426,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/posts\/27410\/revisions\/27426"}],"wp:attachment":[{"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/media?parent=27410"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/categories?post=27410"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/tags?post=27410"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}