This tutorial demonstrates how to build and debug Linux applications using Visual Studio.
To create, build and debug a simple Linux app using VisualGDB, please follow these steps:
- Please download and install the latest VisualGDB.
- On your Windows machine start Visual Studio, select “File->New project”. Then select “VisualGDB->Linux Project Wizard”. Specify project location and press “OK”.
- The VisualGDB Linux Project Wizard will start. As we are making a simple “Hello, World” application, keep “Create a new project” selected and press “Next”.
- If you have not created any projects before, select “Create a new SSH connection” on the next page.
- Provide the host name, user name and password. It is recommended to check the “setup public key” checkbox, so that VisualGDB will automatically generate an public/private keypair, store it in your Windows account’s key container and setup the remote Linux machine to use it. If you don’t enable public key authentication, VisualGDB will remember your password for this connection. The stored passwords are encrypted using a key stored in your Windows account. Thus, the password will only be available once you login using your Windows account.
- If you want to use a different toolchain (e.g. LLVM), you can select if from the toolchain list. The button to the right of the toolchain list allows customizing individual tools, such as the compiler. You can also select a cross-compiler here or specify a different deployment machine. Use the diagram at the bottom of the page to check the correctness of your setup:
- The hammer icon corresponds to the machine where the compiler is run.
- The “play” icon corresponds to the machine where the debugged program is launched.
- When you press “Next”, VisualGDB will test your toolchain by trying to compile and run a trivial program. If any errors are detected at this stage, you will see a detailed error log with further troubleshooting information.
- As the same source code will be edited under Windows and then compiled under Linux, VisualGDB will need to keep the sources synchronized. The easiest way is to use automatic file uploading via SSH. Alternatively, VisualGDB can setup shared folders (that would require root password).
- Press Finish to complete the wizard. If you are setting up your first project using this Linux machine, VisualGDB will make local caches of the include directories to make them available through IntelliSense.
- Congratulations! The project has been created. You can now build your project, set a breakpoint on the “cout” line and start debugging with F5.
- You can always change various debugging settings by right-clicking at the project in Solution Explorer and selecting “VisualGDB Project Properties”. The properties window allows changing various settings and also copying settings between configurations. Use the search field on the left to find settings by keywords:
- VisualGDB uses GNU make to build your project. You can easily customize various GCC settings, such as additional include directories or compiler flags, on the Makefile Settings page of VisualGDB Project Properties:Once you click “Apply” or “OK”, VisualGDB will automatically check the new settings and update IntelliSense configuration accordingly.
- You can also right-click inside Visual Studio menu bar and enable the VisualGDB toolbar. It provides shortcuts to commonly used functionality (e.g. changing the program arguments for next launch):
- Note that when you add further source files to the project, the Makefile will be updated automatically next time you build the project in Visual Studio:
- VisualGDB 5.0 and later includes a Clang-based IntelliSense engine that supports GNU C/C++ extensions, such as struct initializers:
- It also supports refactoring features like “Create from use” and detailed C/C++ code map:
That was it for the basic project. If you want a more advanced example, see our ImageMagick tutorial.