Latest Posts

Building Widelands in Visual Studio

This article explains how to use Microsoft Visual Studio to build and develop Widelands on Windows

Prerequisites

  • Install python
  • Install Visual Studio together with the English language pack (required for vcpkg).
  • Download and install vcpkg
    • Run bootstrap-vcpkg.bat first.
    • Then run vcpkg integrate install to integrate vcpkg with Visual Studio.
    • Install all dependencies (Note the selected static triplet): vcpkg install --triplet=x64-windows-static boost gettext libpng icu glbinding sdl2 sdl2-ttf sdl2-mixer[libvorbis,libflac,mpg123] sdl2-image[libjpeg-turbo,tiff] graphite2 harfbuzz opusfile libwebp
    • If you want to save space, you can safely delete the buildtrees folder.
  • Download the latest static release zip of gettext.
    • Extract the contained bin folder to [vcpkg]/installed/x64-windows-static/bin
  • Remove the prefix lib from libmpg123.lib libiconv.lib libintl.lib libcharset.lib in [vcpkg]/installed/x64-windows-static/lib and [vcpkg]/installed/x64-windows-static/debug/lib (libmpg123.lib -> mpg123.lib)..

Project configuration

  • Copy utils/win32/CMakeSettings.json to the top level directory to use with Visual Studio.
  • Launch Visual Studio and select the Widelands root as workspace.
    • CMake should automatically start parsing the project and picking up the vcpkg toolchain file.
    • Then start compilation
  • Copy utils/win32/launch.vs.json to the .vs/ directory as start-configuration.

Troubleshooting

  • vcpkg fails to build a package (e.g. freetype)
    • remove the package (or its dependency parent, e.g. sdl-ttf) from the install list and install it separately afterwards (don't forget the --triplet=x64-windows-static). vcpkg sometimes has problems resolving dependency chains.