{"id":5787,"date":"2020-03-24T10:32:42","date_gmt":"2020-03-24T17:32:42","guid":{"rendered":"https:\/\/visualgdb.com\/w\/?p=5787"},"modified":"2021-08-06T19:43:00","modified_gmt":"2021-08-07T02:43:00","slug":"installing-visualgdb-manually","status":"publish","type":"post","link":"https:\/\/visualgdb.com\/documentation\/troubleshooting\/install\/manual\/","title":{"rendered":"Installing VisualGDB Manually"},"content":{"rendered":"<p>Normally, VisualGDB can be installed automatically by running the its MSI file:<a href=\"https:\/\/visualgdb.com\/w\/wp-content\/uploads\/2020\/03\/inst.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-5788\" src=\"https:\/\/visualgdb.com\/w\/wp-content\/uploads\/2020\/03\/inst.png\" alt=\"\" width=\"495\" height=\"387\" \/><\/a><\/p>\n<p>However, it may not work in some exotic configurations, e.g.:<\/p>\n<ul>\n<li>Using MSBuild only, without Visual Studio<\/li>\n<li>Trying to use multiple VisualGDB versions on the same machine<\/li>\n<li>Not being able to use Windows Installer<\/li>\n<\/ul>\n<p>This document explains how to install VisualGDB manually by copying the necessary files from an existing installation.<\/p>\n<h1>Non-MSBuild Projects<\/h1>\n<p>If your projects are not based on MSBuild, you can simply copy the <strong>C:\\Program Files (x86)\\Sysprogs\\VisualGDB<\/strong> directory to an arbitrary location on another machine. Then you can use the following command lines to invoke VisualGDB manually:<\/p>\n<table style=\"border-collapse: collapse; width: 100%;\" border=\"1\">\n<tbody>\n<tr>\n<td style=\"width: 50%;\">Command Line<\/td>\n<td style=\"width: 50%;\">Meaning<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 50%;\">VisualGDB.exe \/build &lt;file.vgdbsettings&gt;<\/td>\n<td style=\"width: 50%;\">Build a specific project. Works for <strong>.vgdbsettings<\/strong>, <strong>.vgdbcmake<\/strong> or <strong>.vgdbproj<\/strong> files.<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 50%;\">VisualGDB.exe \/launch &lt;file.vgdbsettings&gt;<\/td>\n<td style=\"width: 50%;\">Run a program without debugging.<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 50%;\">VisualGDB.exe \/teamsync<\/td>\n<td style=\"width: 50%;\">Synchronize <a href=\"https:\/\/visualgdb.com\/tutorials\/custom\/teamsettings\/\">Team Settings<\/a><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 50%;\">VisualGDB.exe \/teamsync:\\\\server\\share<\/td>\n<td style=\"width: 50%;\">Set the shared team settings folder and synchronize Team Settings<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 50%;\">VisualGDB.exe \/pkgmgr<\/td>\n<td style=\"width: 50%;\">Show the <strong>VisualGDB Package Manager<\/strong> window<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 50%;\">VisualGDB.exe \/about<\/td>\n<td style=\"width: 50%;\">Show the <strong>About VisualGDB<\/strong> window<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 50%;\">VisualGDB.exe \/runtests &lt;file.vgdbtestcontainer&gt;<\/td>\n<td style=\"width: 50%;\">Run tests from a given project or a test container<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h1><a id=\"msbuild\"><\/a>MSBuild-based Projects<\/h1>\n<p>Building MSBuild-based projects without using the VisualGDB installer requires copying the VisualGDB platform definition into the MSBuild platform directory. Below is the location of the MSBuild platform directory for different Visual Studio versions:<\/p>\n<table style=\"border-collapse: collapse; width: 100%;\" border=\"1\">\n<tbody>\n<tr>\n<td style=\"width: 13.6814%;\">Visual Studio Year<\/td>\n<td style=\"width: 9.91055%;\">Internal Version<\/td>\n<td style=\"width: 76.408%;\">MSBuild Platform Directory<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 13.6814%;\">2010<\/td>\n<td style=\"width: 9.91055%;\">10.0<\/td>\n<td style=\"width: 76.408%;\">C:\\Program Files (x86)\\MSBuild\\Microsoft.Cpp\\v4.0\\Platforms<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 13.6814%;\">2012<\/td>\n<td style=\"width: 9.91055%;\">11.0<\/td>\n<td style=\"width: 76.408%;\">C:\\Program Files (x86)\\MSBuild\\Microsoft.Cpp\\v4.0\\V110\\Platforms<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 13.6814%;\">2013<\/td>\n<td style=\"width: 9.91055%;\">12.0<\/td>\n<td style=\"width: 76.408%;\">C:\\Program Files (x86)\\MSBuild\\Microsoft.Cpp\\v4.0\\V120\\Platforms<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 13.6814%;\">2015<\/td>\n<td style=\"width: 9.91055%;\">14.0<\/td>\n<td style=\"width: 76.408%;\">C:\\Program Files (x86)\\MSBuild\\Microsoft.Cpp\\v4.0\\V140\\Platforms<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 13.6814%;\">2017<\/td>\n<td style=\"width: 9.91055%;\">15.0<\/td>\n<td style=\"width: 76.408%;\">C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\Common7\\IDE\\VC\\VCTargets\\Platforms<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 13.6814%;\">2019<\/td>\n<td style=\"width: 9.91055%;\">16.0<\/td>\n<td style=\"width: 76.408%;\">C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\&lt;Edition&gt;\\MSBuild\\Microsoft\\VC\\v160\\Platforms<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 13.6814%;\">2022<\/td>\n<td style=\"width: 9.91055%;\">17.0<\/td>\n<td style=\"width: 76.408%;\">C:\\Program Files\\Microsoft Visual Studio\\2022\\&lt;Edition&gt;\\MSBuild\\Microsoft\\VC\\v170\\Platforms<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The VisualGDB platform files can be copied from the <strong>&lt;Platforms&gt;\\VisualGDB <\/strong>directory on a machine with a regular VisualGDB installation.<\/p>\n<p>Note that the VisualGDB platform files reference the <strong>$(VISUALGDB_DIR)<\/strong> environment variable:<\/p>\n<pre class=\"\">&lt;Project ToolsVersion=\"4.0\" xmlns=\"http:\/\/schemas.microsoft.com\/developer\/msbuild\/2003\"&gt;\r\n  &lt;Import Project=\"$(VISUALGDB_DIR)\\MSBuild\\SysprogsPlatform.targets\" \/&gt;\r\n&lt;\/Project&gt;<\/pre>\n<p>Make sure you set it in your System Settings, or hardcode the VisualGDB path inside the copied platform files.<\/p>\n<p>If you would like to use multiple VisualGDB installations on the same machine, you can add conditions to the <strong>&lt;Import&gt;<\/strong> elements inside the platform definition, and pick a specific VisualGDB location based on some variables specified in the project file.<\/p>\n<h1>Visual Studio Extension Files<\/h1>\n<p>If you are manually installing VisualGDB into a specific Visual Studio instance, you would also need to copy the VisualGDB extension definition. This can be done as shown below:<\/p>\n<ol>\n<li>Copy the <strong>&lt;Visual Studio Directory&gt;\\Common7\\IDE\\Extensions\\Sysprogs\\VisualGDB<\/strong> directory from an existing installation<\/li>\n<li>Replace the VisualGDB path in the <strong>VisualGDB.pkgdef<\/strong> and <strong>extension.vsixmanifest<\/strong> files (search for <strong>C:\\<\/strong> to find all instances of it)<\/li>\n<li>Start Visual Studio, open the Extension Manager and enable the VisualGDB extension there<\/li>\n<\/ol>\n<p>Note that the <strong>.pkgdef<\/strong> and <strong>.vsixmanifest<\/strong> files should include the full paths to the VisualGDB directory and cannot use any environment variables.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Normally, VisualGDB can be installed automatically by running the its MSI file: However, it may not work in some exotic<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[202],"tags":[],"_links":{"self":[{"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/posts\/5787"}],"collection":[{"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/comments?post=5787"}],"version-history":[{"count":5,"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/posts\/5787\/revisions"}],"predecessor-version":[{"id":7450,"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/posts\/5787\/revisions\/7450"}],"wp:attachment":[{"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/media?parent=5787"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/categories?post=5787"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/visualgdb.com\/w\/wp-json\/wp\/v2\/tags?post=5787"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}