BuildingOnWindows.wiki
author alfadur
Thu, 22 Aug 2019 23:09:43 +0300
changeset 1965 25554a6a7b03
parent 1964 f597999c9599
child 1966 4804d8c23fba
permissions -rw-r--r--
change windows build instructions to use fpc cross-compiler

#summary Instructions for building Hedgewars on Windows
#labels Phase-Implementation,Phase-Design,Phase-Support

= Building on Windows =

== Things to download ==
First of all, figure out whether your system is a 32-bit or a 64-bit system. You can use the guide at [https://support.microsoft.com/en-us/help/15056/windows-32-64-bit-faq]. On a 64-bit system both 32-bit and 64-bit builds can be made, although 64-bit is preferred. Making a 64-bit build on a 32-bit system might be possible, but hasn't been tested.

== Required Tools ==
Choose either 32-bit or 64-bit depending on your system and which build you want to make.

 # CMake: click either *Windows win32-x86 Installer* or *Windows win64-x64 Installer*
  * Link: https://cmake.org/download/
 # Visual Studio: click *Download Visual Studio → Community 2019* (earlier version starting from Community 2015 Update 3 might also work)
  * Link: https://visualstudio.microsoft.com/
 # Vcpkg
  * Link: https://github.com/Microsoft/vcpkg
 # !FreePascal: click *Windows 32-bit*, then download *fpc-<version>-win32.exe* (for 64-bit builds also download fpc-<version>.i386-win32.cross.x86_64-win64.exe)
  * Link: https://www.freepascal.org/download.html
 # Mercurial: pick one (!TortoiseHg has a GUI and is more user-friendly)
  * !TortoiseHg: Chose one based on your OS version
   * Link: https://tortoisehg.bitbucket.io/
  * Command-line mercurial
   * Link: http://mercurial.selenic.com/downloads/

== Setup ==
 # Install CMake, but please *ensure* you select "Add CMake to the system PATH for all users", so you can run CMake directly from the command line.
 # Install !FreePascal and if necessary the 64-bit cross-compiler plugin (the one with `cross.x86_64-win64` in the file name).
 # Install Visual Studio, ensuring the *Workloads → Desktop development with C++* and *Language packs → English* options are selected.
 # Install Vcpkg by following the instructions under *Quick Start* section on the project page. If you don't have Git, use the *Clone or download → Download ZIP* option and extract the ZIP file. Create `VCPKG_ROOT` environment variable pointing to the directory you've cloned/extracted it to.
 # Install !TortoiseHg / Mercurial
 # Restart the computer
 # Download the Hedgewars source code:
  # Using !TortoiseHg:
   * Right-click in any folder on your computer
   * Select Tortoise HG → Clone.
   * In the _Source_ textbox, enter: https://hg.hedgewars.org/hedgewars/
   * Press "clone"
  # Using command-line Mercurial
   * If you have Windows 7 or later, skip the next 3 steps, and instead, use Shift + Right-click in the folder where you want to download the source.
   * Start _Run..._ ( Press Windows key + R, or click on the Start menu, then on "Run ..." )
   * Enter: `cmd.exe`
   * Navigate to where you want to download the source
   * Type and execute (The initial clone of the repository will take a while): `hg clone https://hg.hedgewars.org/hedgewars/ trunk`
 # Navigate to the Vcpkg directory in the command line and build the necessary libraries (this will also take a while, especially for Qt). The command is:
  * For 32-bit builds: `.\vcpkg.exe install sdl2 sdl2-image sdl2-ttf sdl2-mixer sdl2-mixer[libvorbis] sdl2-net physfs openssl qt5-base qt5-tools ffmpeg`
  * For 64-bit builds: `.\vcpkg.exe install sdl2:x64-windows sdl2-image:x64-windows sdl2-ttf:x64-windows sdl2-mixer:x64-windows sdl2-mixer[libvorbis]:x64-windows sdl2-net:x64-windows physfs:x64-windows openssl:x64-windows qt5-base:x64-windows qt5-tools:x64-windows ffmpeg:x64-windows`
 # Build Hedgewars
  * Run the Developer Command Prompt for VS 2019 (or other installed version) from the Start menu (if you want Hedgewars to install to the default location in `C:\Program Files (x86)`, run it as administrator).
  * For 64-bit builds, in the dev command prompt run the following command (not necessary for 32-bit builds): `VC\Auxiliary\Build\vcvarsall.bat amd64`
  * Navigate to `<hedgewars_root>\tools` where `<hedgewars_root>` is the directory where you cloned the repository source to.
  * Run `build_vcpkg.bat` script
 # After building, you can run Hedgewars from the installed location (default is `C:\Program Files (x86)\hedgewars\hedgewars.exe`)