BuildingOnWindows.wiki
author Wuzzy
Fri, 21 Jun 2019 22:59:55 +0100
changeset 1922 0e978d0457b1
parent 1895 93f8269fca27
child 1955 637685e52477
permissions -rw-r--r--
LuaStats: siPointType special values
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
652
0f7445a72880 Big fat warning about these instructions being outdated
Wuzzy
parents: 594
diff changeset
     1
#summary Instructions for building Hedgewars on Windows (Currently outdated)
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
     2
#labels Phase-Implementation,Phase-Design,Phase-Support
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
     3
774
86e81308d67d BuildingOnWindows: Edited via web interface
unC0Rr
parents: 757
diff changeset
     4
= Building on Windows =
757
0ac49c33cf3e BuildingOnWindows: Add title, fix header levels
Wuzzy
parents: 652
diff changeset
     5
== Warning! ==
652
0f7445a72880 Big fat warning about these instructions being outdated
Wuzzy
parents: 594
diff changeset
     6
These build instructions are very outdated. Try to build under [BuildingOnLinux GNU/Linux], if you can.
0f7445a72880 Big fat warning about these instructions being outdated
Wuzzy
parents: 594
diff changeset
     7
798
30c5f1ebd552 global replace of http with https for hedgewars.org wiki links
nemo
parents: 774
diff changeset
     8
If you have managed to get a successful Windows build for a recent Hedgewars build, please get in touch with us (Try the forums, for example: https://hedgewars.org/forum)
652
0f7445a72880 Big fat warning about these instructions being outdated
Wuzzy
parents: 594
diff changeset
     9
757
0ac49c33cf3e BuildingOnWindows: Add title, fix header levels
Wuzzy
parents: 652
diff changeset
    10
== Things to download ==
1891
8c23bd1647de BuildingOnWindows: Link to other wikipage
Wuzzy
parents: 798
diff changeset
    11
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 need it while doing the setup.
8c23bd1647de BuildingOnWindows: Link to other wikipage
Wuzzy
parents: 798
diff changeset
    12
8c23bd1647de BuildingOnWindows: Link to other wikipage
Wuzzy
parents: 798
diff changeset
    13
Basically, you need to have all dependencies listed at [Dependencies]. The following is a list of where you can obtain the dependencies for Windows:
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    14
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    15
 # CMake - download the *Windows (Win32 Installer)* 
1893
dae83669bc68 BuildingOnWindows: Update links
Wuzzy
parents: 1891
diff changeset
    16
  * Link: https://cmake.org/download/
192
9a34387a4262 Update the turotial so ppls won't have to download the entire QT Sdk :)
ovibalea@gmail.com
parents: 191
diff changeset
    17
 # FreePascal - download the *Download as installer* 
1893
dae83669bc68 BuildingOnWindows: Update links
Wuzzy
parents: 1891
diff changeset
    18
  * Link: http://sourceforge.net/projects/freepascal/
318
b5c9ee17f621 Updating the QtSDK link *again*. This time it does actually link to the QtSDK and it really does work.
Caironater@gmail.com
parents: 316
diff changeset
    19
 # Qt SDK - Select the online installer, as it will save you ~1 GB of bandwidth. Nokia will also require you to register an account to download it.
1893
dae83669bc68 BuildingOnWindows: Update links
Wuzzy
parents: 1891
diff changeset
    20
  * Link: https://www.qt.io/download-qt-installer
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    21
 # Mercurial - pick one (TortoiseHg has a GUI and is more user-friendly)
1895
93f8269fca27 BuildingOnWindows: Fix indents?
Wuzzy
parents: 1894
diff changeset
    22
  * TortoiseHg - Chose one based on your OS version
1893
dae83669bc68 BuildingOnWindows: Update links
Wuzzy
parents: 1891
diff changeset
    23
   * Link: https://tortoisehg.bitbucket.io/
1895
93f8269fca27 BuildingOnWindows: Fix indents?
Wuzzy
parents: 1894
diff changeset
    24
  * Command-line mercurial
266
76e82a7897f1 updated qt, fpc and hg links
vittorio.giovara@gmail.com
parents: 212
diff changeset
    25
   * Link: http://mercurial.selenic.com/downloads/
1894
1f4a90b1ff35 BuildingOnWindows: move warning
Wuzzy
parents: 1893
diff changeset
    26
 #  _Windows building archive_ - it contains everything you need to compile Hedgewars on Windows. 
1f4a90b1ff35 BuildingOnWindows: move warning
Wuzzy
parents: 1893
diff changeset
    27
   * Link (**!!!LINK IS DEAD!!!**): http://hedgewars.googlecode.com/files/hedgewars-win32-buildscripts.zip
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    28
757
0ac49c33cf3e BuildingOnWindows: Add title, fix header levels
Wuzzy
parents: 652
diff changeset
    29
== Setup ==
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    30
 # Install CMake, but please *ensure* you select "Add CMake to the system PATH for all users", so you can run CMake directly from command line.
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    31
 # Install FreePascal.
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    32
 # Install Qt SDK, with the "Custom" option:
192
9a34387a4262 Update the turotial so ppls won't have to download the entire QT Sdk :)
ovibalea@gmail.com
parents: 191
diff changeset
    33
  * Click the *DESELECT ALL* button. We will then check only what we need
9a34387a4262 Update the turotial so ppls won't have to download the entire QT Sdk :)
ovibalea@gmail.com
parents: 191
diff changeset
    34
  * Check *Qt SDK/Miscellaneous/MinGW <any version>*
318
b5c9ee17f621 Updating the QtSDK link *again*. This time it does actually link to the QtSDK and it really does work.
Caironater@gmail.com
parents: 316
diff changeset
    35
  * Check *Qt SDK/Development Tools/Desktop Qt/Qt <newest version>/Desktop Qt <newest version> - Mingw*
b5c9ee17f621 Updating the QtSDK link *again*. This time it does actually link to the QtSDK and it really does work.
Caironater@gmail.com
parents: 316
diff changeset
    36
  * !!If there are any error message boxes, just press ignore until they are all gone. :)
b5c9ee17f621 Updating the QtSDK link *again*. This time it does actually link to the QtSDK and it really does work.
Caironater@gmail.com
parents: 316
diff changeset
    37
 # Install TortoiseHg / Mercurial
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    38
 # Restart the computer
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    39
 # Download the Hedgewars source:
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    40
  # Using TortoiseHg
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    41
   * Right-click in any folder on your computer
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    42
   * Select Tortoise HG -> Clone.
798
30c5f1ebd552 global replace of http with https for hedgewars.org wiki links
nemo
parents: 774
diff changeset
    43
   * In the _Source_ textbox enter: https://hg.hedgewars.org/hedgewars/
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    44
   * Press clone
318
b5c9ee17f621 Updating the QtSDK link *again*. This time it does actually link to the QtSDK and it really does work.
Caironater@gmail.com
parents: 316
diff changeset
    45
  # Using command-line Mercurial
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    46
   * If you have Windows 7 skip the next 3 steps, and instead, SHIFT + Right click in the folder where you want to download the source.
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    47
   * Start _Run..._ ( WINDOWS Key + R , or Start -> Run... )
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    48
   * Enter:
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    49
{{{
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    50
cmd.exe
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    51
}}} 
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    52
   * Navigate to where you want to download the source
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    53
   * Type and execute ( The initial clone of the repository will take a while, is about 550MiB or so... ):
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    54
{{{
798
30c5f1ebd552 global replace of http with https for hedgewars.org wiki links
nemo
parents: 774
diff changeset
    55
hg clone https://hg.hedgewars.org/hedgewars/ trunk
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    56
}}}
318
b5c9ee17f621 Updating the QtSDK link *again*. This time it does actually link to the QtSDK and it really does work.
Caironater@gmail.com
parents: 316
diff changeset
    57
 # Navigate to the where you cloned the repository source to.
193
f94b00c2ff70 Update the wiki to reflect the latest directory changes.
ovibalea@gmail.com
parents: 192
diff changeset
    58
 # Go to the "tools/build_windows.bat" file, and modify the following:
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    59
  * SET PASCAL=<put the path to the directory that contains fpc's executable (fpc.exe)> (for example: c:\FPC\2.4.4\bin\i386-win32\)
318
b5c9ee17f621 Updating the QtSDK link *again*. This time it does actually link to the QtSDK and it really does work.
Caironater@gmail.com
parents: 316
diff changeset
    60
  * SET SET QTDIR=<path to the QtSDK\Desktop\Qt\<your version>> (for example: c:\QtSDK\Desktop\Qt\4.8.1\)
193
f94b00c2ff70 Update the wiki to reflect the latest directory changes.
ovibalea@gmail.com
parents: 192
diff changeset
    61
 # You can now build hedgewars, by running the *tools/build_windows.bat* command.
194
05262f15ad20 Mention the shortcut
ovibalea@gmail.com
parents: 193
diff changeset
    62
 # After building it, you can run it from the Desktop - using the *Hedgewars* shortcut.
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    63
757
0ac49c33cf3e BuildingOnWindows: Add title, fix header levels
Wuzzy
parents: 652
diff changeset
    64
== Additional setup for Visual Studio 2010 ==
212
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    65
To build Hedgewars using Visual Studio 2010, you will need to update a few SDL files using this zip file (http://hedgewars.googlecode.com/files/hedgewars-VS2010-additional.zip). Just download and overwrite it into your currect hedgewars project folder. This is mainly an update to SDL_mixer (updating it to version 1.2.12), and changing the SDLconfig.h file to work with the sperate platform headers instead of the current one.
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    66
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    67
Next you will need to change some project settings. If you don't have the SDL directives set correctly in CMake then your project files will be incorect (they still may be incorrect even if you did get them set right). You need to change the following Project Settings for the 'hedgewars' project.
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    68
 # Make sure that under C/C++ => Additional Include Directories you have \hedgewars\misc\winutils\include\.
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    69
 # Change the Linker => Input => Additional Dependencies option to have the following at the end:
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    70
  * \hedgewars\misc\winutils\lib\SDL.lib
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    71
  * \hedgewars\misc\winutils\lib\SDLmain.lib
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    72
  * \hedgewars\misc\winutils\lib\SDL_mixer.lib
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    73
 # Adjust the Output Directory under the General settings to be just \hedgewars\bin\.
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    74
757
0ac49c33cf3e BuildingOnWindows: Add title, fix header levels
Wuzzy
parents: 652
diff changeset
    75
== Building process ==
594
sheepluva
parents: 592
diff changeset
    76
Run the *tools/build_windows.bat* file each time you want to build the source. Please note that there might some incompatibilities with the environment paths of this script in case that you are running MinSYS or Cygwin: we are quite confident that if you use such software you're quite able to correctly set up any paths.