BuildingOnWindows.wiki
changeset 1956 625477ff2786
parent 1955 637685e52477
child 1957 166ed9944600
equal deleted inserted replaced
1955:637685e52477 1956:625477ff2786
     5 
     5 
     6 == Things to download ==
     6 == Things to download ==
     7 First of all, figure out whether your system is a 32-bit or a 64-bit system. You can use the guide at [http://windows.microsoft.com/en-US/windows7/find-out-32-or-64-bit]. You will only be able to make a 64-bit build on a 64-bit system. 32-bit builds can be made on both 32-bit and 64-bit systems.
     7 First of all, figure out whether your system is a 32-bit or a 64-bit system. You can use the guide at [http://windows.microsoft.com/en-US/windows7/find-out-32-or-64-bit]. You will only be able to make a 64-bit build on a 64-bit system. 32-bit builds can be made on both 32-bit and 64-bit systems.
     8 
     8 
     9 == Required Tools ==
     9 == Required Tools ==
    10 Choose either 32-bit or 64-bit depending on your system and which build you want to make
    10 Choose either 32-bit or 64-bit depending on your system and which build you want to make.
    11 
    11 
    12  # CMake - click either *Windows win64-x64 Installer* or *Windows win32-x86 Installer*
    12  # CMake: click either *Windows win64-x64 Installer* or *Windows win32-x86 Installer*
    13   * Link: https://cmake.org/download/
    13   * Link: https://cmake.org/download/
    14  # Visual Studio - click *Download Visual Studio -> Community 2019* (earlier version starting from Community 2015 Update 3 might also work)
    14  # Visual Studio: click *Download Visual Studio → Community 2019* (earlier version starting from Community 2015 Update 3 might also work)
    15   * Link: https://visualstudio.microsoft.com/
    15   * Link: https://visualstudio.microsoft.com/
    16  # Vcpkg
    16  # Vcpkg
    17   * Link: https://github.com/Microsoft/vcpkg
    17   * Link: https://github.com/Microsoft/vcpkg
    18  # FreePascal
    18  # !FreePascal
    19   * 32-bit compiler - click *Windows 32-bit*
    19   * 32-bit compiler: click *Windows 32-bit*
    20    * Link: https://www.freepascal.org/download.html
    20    * Link: https://www.freepascal.org/download.html
    21   * 64-bit compiler (necessary for 64-bit builds, bundled with Lazarus IDE) - click *Windows (64 Bits)*
    21   * 64-bit compiler (necessary for 64-bit builds, bundled with Lazarus IDE): click *Windows (64-bit)*
    22    * Link: https://www.lazarus-ide.org/index.php?page=downloads
    22    * Link: https://www.lazarus-ide.org/index.php?page=downloads
    23  # Mercurial - pick one (TortoiseHg has a GUI and is more user-friendly)
    23  # Mercurial: pick one (!TortoiseHg has a GUI and is more user-friendly)
    24   * TortoiseHg - Chose one based on your OS version
    24   * !TortoiseHg: Chose one based on your OS version
    25    * Link: https://tortoisehg.bitbucket.io/
    25    * Link: https://tortoisehg.bitbucket.io/
    26   * Command-line mercurial
    26   * Command-line mercurial
    27    * Link: http://mercurial.selenic.com/downloads/
    27    * Link: http://mercurial.selenic.com/downloads/
    28 
    28 
    29 == Setup ==
    29 == Setup ==
    30  # 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.
    30  # 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.
    31  # Install FreePascal / Lazarus IDE. Add the directory containing fpc.exe to the PATH environment variable (either user or system).
    31  # Install !FreePascal / Lazarus IDE. Add the directory containing `fpc.exe` to the `PATH` environment variable (either user or system).
    32  # Install VisualStudio, ensuring the *Workloads -> Desktop development with C++* option is selected.
    32  # Install !VisualStudio, ensuring the *Workloads → Desktop development with C++* option is selected.
    33  # Install Vcpkg by following the instructions under *Quick Start* section on the project page. If you don't have Git, use *Clone or download -> Download ZIP* option and extract the ZIP file. Create VCPKG_ROOT environment variable pointing to the directory you've clones/extracted it to.
    33  # 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 clones/extracted it to.
    34  # Install TortoiseHg / Mercurial
    34  # Install !TortoiseHg / Mercurial
    35  # Restart the computer
    35  # Restart the computer
    36  # Download the Hedgewars source:
    36  # Download the Hedgewars source code:
    37   # Using TortoiseHg
    37   # Using !TortoiseHg:
    38    * Right-click in any folder on your computer
    38    * Right-click in any folder on your computer
    39    * Select Tortoise HG -> Clone.
    39    * Select Tortoise HG → Clone.
    40    * In the _Source_ textbox enter: https://hg.hedgewars.org/hedgewars/
    40    * In the _Source_ textbox, enter: https://hg.hedgewars.org/hedgewars/
    41    * Press clone
    41    * Press "clone"
    42   # Using command-line Mercurial
    42   # Using command-line Mercurial
    43    * If you have Windows 7 or later, skip the next 3 steps, and instead, SHIFT + Right click in the folder where you want to download the source.
    43    * 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.
    44    * Start _Run..._ ( WINDOWS Key + R , or Start -> Run... )
    44    * Start _Run..._ ( Press Windows key + R, or click on the Start menu, then on "Run ..." )
    45    * Enter:
    45    * Enter:
    46 {{{
    46 {{{
    47 cmd.exe
    47 cmd.exe
    48 }}}
    48 }}}
    49    * Navigate to where you want to download the source
    49    * Navigate to where you want to download the source
    50    * Type and execute (The initial clone of the repository will take a while):
    50    * Type and execute (The initial clone of the repository will take a while):
    51 {{{
    51 {{{
    52 hg clone https://hg.hedgewars.org/hedgewars/ trunk
    52 hg clone https://hg.hedgewars.org/hedgewars/ trunk
    53 }}}
    53 }}}
    54  # Run Vckpg in the command line to build the necessary libraries (this will also take a while, especially for Qt). The command is:
    54  # Run Vckpg in the command line to build the necessary libraries (this will also take a while, especially for Qt). The command is:
    55   * For 32-bit builds
    55   * For 32-bit builds:
    56 {{{
    56 {{{
    57 ./vcpkg.exe install sdl2 sdl2-image sdl2-ttf sdl2-mixer sdl2-mixer[libvorbis] physfs openssl qt5-base qt5-tools ffmpeg
    57 ./vcpkg.exe install sdl2 sdl2-image sdl2-ttf sdl2-mixer sdl2-mixer[libvorbis] physfs openssl qt5-base qt5-tools ffmpeg
    58 }}}
    58 }}}
    59   * For 32-bit builds
    59   * For 64-bit builds:
    60 {{{
    60 {{{
    61 ./vcpkg.exe install sdl2:x64-windows sdl2-image:x64-windows sdl2-ttf:x64-windows sdl2-mixer:x64-windows sdl2-mixer[libvorbis]:x64-windows physfs:x64-windows openssl:x64-windows qt5-base:x64-windows qt5-tool:x64-windows ffmpeg:x64-windows
    61 ./vcpkg.exe install sdl2:x64-windows sdl2-image:x64-windows sdl2-ttf:x64-windows sdl2-mixer:x64-windows sdl2-mixer[libvorbis]:x64-windows physfs:x64-windows openssl:x64-windows qt5-base:x64-windows qt5-tool:x64-windows ffmpeg:x64-windows
    62 }}}
    62 }}}
    63  # Build Hedgewars
    63  # Build Hedgewars
    64   * 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).
    64   * 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).
    65   * For 64-bit builds, in the dev command prompt run the following command (not necessary for 32-bit builds)
    65   * For 64-bit builds, in the dev command prompt run the following command (not necessary for 32-bit builds)
    66 {{{
    66 {{{
    67 VC\Auxiliary\Build\vcvarsall.bat amd64
    67 VC\Auxiliary\Build\vcvarsall.bat amd64
    68 }}}
    68 }}}
    69   * Navigate *<hedgewars_root>/tools* where *<hedgewars_root>* is the directory where you cloned the repository source to.
    69   * Navigate to `<hedgewars_root>/tools` where `<hedgewars_root>` is the directory where you cloned the repository source to.
    70   * Run *build_vcpkg.bat* script
    70   * Run `build_vcpkg.bat` script
    71  # After building, you can run Hedgewars from the installed location (default is *C:/Program Files (x86)/hedgewars/hedgewars.exe*)
    71  # After building, you can run Hedgewars from the installed location (default is `C:/Program Files (x86)/hedgewars/hedgewars.exe`)
    72 
    72 
    73 == Caveats ==
    73 == Caveats ==
    74  # The linker from 64-bit FPC included in the Lazarus IDE might occasionally fail, producing *hwengine.exe* filled with zeroes. If this happens, just delete it and rerun *tools/build_vcpkg.bat* again (or run *nmake hedgewars* in the root directory to only rebuild the engine)
    74  # The linker from 64-bit FPC included in the Lazarus IDE might occasionally fail, producing `hwengine.exe` filled with zeroes. If this happens, just delete it and re-run `tools/build_vcpkg.bat` again (or run `nmake hedgewars` in the root directory to only rebuild the engine)