X-Pilot is a client written in C++ and the Qt Framework that can be used to interface X-Plane with the Vatsim network.

Compiling x-pilot was challenging. Here's the general steps I followed (successfully?)

  • Download the xpilot client from https://github.com/xpilot-project/xpilot and install somewhere
    • Please note that when downloading x-pilot, it relies on multiple external repositories found in the externals folder and the plugin folder. If your github client doesn't resolve and download these automatically, you may need to add them manually.
  • From within MSVC 2022, add the Qt libraries under Extensions > Manage Extensions
    • Qt Vs CMake Tools
    • Qt Visual Studio Tools
    • Restart MSVC
  • Install Qt6 (open source)
    • Download and install the Qt Open Source Installer, currently version 6.5, to C:\Qt
    • Add a Qt environment variable for Qt6_HOME to C:\Qt\6.5.2\msvc2019_64
  • The externals/boost folder contains only header files. I needed to download the correct binary version, currently 1.75.0, and install the contents of the lib64-msvc-14.2 folder to externals/boost/lib
  • Restart MSVC and open the "xpilot" folder
  • After clicking "Generate", if all goes well, you should get a number of deliverables in the build dropdown, particularly xpilot.exe


At this point, I got a whole new list of issues. Starting with the include errors, here's a few things I did to resolve them:

  • Add speexdsp folder to the xpilot/client folder so that speexdsp_*.h include files can be found (library already exists in externals)
  • From the opus libraryadd the opus/include folder to the xpilot/client folder so that opus.h include files can be found (library already exists in externals)


After this, I got a couple errors relating to some Qt identifiers being missing in fsd_client.cpp and appconfig.cpp. Not sure why, but the following needed to each of these files:

#include <QStringDecoder>