====== C/C++ ======
COMFILE Technology does not provide technical support for Visual Studio. Contact the Microsoft directly.
===== C/C++ (Remote Compiling) =====
Microsoft has had Linux software development tooling in Visual Studio since Visual Studio 2015.
{{ :comfilepi:vc_linux.png?450 |}}
The Visual Studio Linux Features do not inherently support cross-compiling on a Windows PC. Instead, Visual Studio will upload the the source files to the ComfilePi, and use the ComfilePi's toolchain to build the executable. The executable is then executed on the ComfilePi, and the Visual Studio Remote GDB Debugger attaches to it.
- [[:comfilepi:Install Visual Studio Linux Features:]] - How to install the Linux Development Features in Visual Studio 2015, 2017, 2019, and 2022.
- [[:comfilepi:Create a Linux Project:]] - How to create a new Visual Studio Project for Linux Development
For more information about using Visual Studio for Linux software development, see the [[https://docs.microsoft.com/en-us/cpp/linux/download-install-and-setup-the-linux-development-workload|Visual C++ Linux Documentation]].
===== C++ with Qt (Cross-Compiling) =====
The Qt Company has released a product called //Qt Visual Studio Tools// to enable Qt development and cross-compiling from a Windows PC to a Linux embedded system like the ComfilePi.
{{ :comfilepi:qtconfig.png }}
See the [[https://devblogs.microsoft.com/cppblog/build-and-debug-qt-projects-on-linux-with-qt-visual-studio-tools/|Build and debug Qt on Linux with Qt Visual Studio Tools]] blog post for details
To install the latest Qt release on the ComfilePi run the following commands in a terminal:
==== Bullseye ====
sudo apt-get update
sudo apt-get install qtbase5-dev qtbase5-examples qtbase5-doc qtbase5-doc-html
==== Buster ====
sudo apt-get update
sudo apt-get install qt5-default qtbase5-examples qt5-doc qt5-doc-html qtbase5-doc-html
Additional Qt libraries can be installed using [[https://packages.debian.org/search?searchon=names&keywords=libqt5|libqt5*]] and [[https://packages.debian.org/search?searchon=names&keywords=qt|qt*]] package names.
__NOTE:__ COMFILE Technology does not provide technical support for Qt; please [[https://www.qt.io|contact The Qt Company]] for support.
[[comfilepi:index|ComfilePi - Industrial Raspberry Pi Panel PC]]