BuildingOnWindows.wiki
author vittorio.giovara@gmail.com
Tue, 03 Apr 2012 09:35:20 +0000
changeset 212 d47acc7f7185
parent 195 a4eb962ff8a3
child 266 76e82a7897f1
permissions -rw-r--r--
additional instruction for vs2010 by adam.madram (issue #379)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
     1
#summary Instructions for building Hedgewars on Windows
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
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
     4
= Things to download =
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
     5
First of all, please use this guide over here ( http://windows.microsoft.com/en-US/windows7/find-out-32-or-64-bit) to see whether your OS is 32 or 64 bit. You will need it while doing the setup.
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
     6
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
     7
 # CMake - download the *Windows (Win32 Installer)* 
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
     8
  * Link: http://cmake.org/cmake/resources/software.html
192
9a34387a4262 Update the turotial so ppls won't have to download the entire QT Sdk :)
ovibalea@gmail.com
parents: 191
diff changeset
     9
 # FreePascal - download the *Download as installer* 
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    10
  * Link: http://www.freepascal.org/down/i386/win32-ftp.freepascal.org.var
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    11
 # Qt SDK 
192
9a34387a4262 Update the turotial so ppls won't have to download the entire QT Sdk :)
ovibalea@gmail.com
parents: 191
diff changeset
    12
  * Link: http://qt.nokia.com/downloads/sdk-windows-cpp
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    13
 # Mercurial - pick one (TortoiseHg has a GUI and is more user-friendly)
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    14
  # TortoiseHg - Chose one based on your OS version
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    15
   * Link: http://tortoisehg.bitbucket.org/download/index.html
192
9a34387a4262 Update the turotial so ppls won't have to download the entire QT Sdk :)
ovibalea@gmail.com
parents: 191
diff changeset
    16
  # Command-line mercurial
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    17
   * Link (OS 32 bits): http://mercurial.selenic.com/release/windows/Mercurial-2.0.2.exe
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    18
   * Link (OS 64 bits): http://mercurial.selenic.com/release/windows/Mercurial-2.0.2-x64.exe
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    19
 # _Windows building archive_ - it contains everything you need to compile Hedgewars on Windows.
212
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    20
   * Link: http://hedgewars.googlecode.com/files/hedgewars-win32-buildscripts.zip
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    21
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    22
= Setup =
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    23
 # 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
    24
 # Install FreePascal.
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    25
 # 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
    26
  * 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
    27
  * Check *Qt SDK/Miscellaneous/MinGW <any version>*
9a34387a4262 Update the turotial so ppls won't have to download the entire QT Sdk :)
ovibalea@gmail.com
parents: 191
diff changeset
    28
  * Check *Qt SDK/Development Tools/Desktop Qt/Qt <newest version>/Desktop Qt <newest version> - Mingw* (it's the first checkbox)
190
7199dc0aca2f Add info about possible error message boxes
ovibalea@gmail.com
parents: 189
diff changeset
    29
  * !!If there will be any error message boxes, just press ignore until it won't show anymore :)
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    30
 # Install TortoiseHg / mercurial
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    31
 # Restart the computer
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    32
 # Download the Hedgewars source:
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    33
  # Using TortoiseHg
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    34
   * Right-click in any folder on your computer
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    35
   * Select Tortoise HG -> Clone.
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    36
   * In the _Source_ textbox enter: https://hedgewars.googlecode.com/hg/
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    37
   * Press clone
187
fc67aa71e6ed Make the tutorial a bit more user friendly :P
ovibalea@gmail.com
parents: 186
diff changeset
    38
  # Using Command-line mercurial
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    39
   * 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
    40
   * Start _Run..._ ( WINDOWS Key + R , or Start -> Run... )
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    41
   * Enter:
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    42
{{{
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    43
cmd.exe
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    44
}}} 
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    45
   * Navigate to where you want to download the source
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    46
   * 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
    47
{{{
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    48
hg clone https://hedgewars.googlecode.com/hg/ trunk
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    49
}}}
193
f94b00c2ff70 Update the wiki to reflect the latest directory changes.
ovibalea@gmail.com
parents: 192
diff changeset
    50
 # Extract the _Windows Building Archive_ to the hedgewars source folder, in the root source directory - where there are the bin, misc, tools, etc. directories.
f94b00c2ff70 Update the wiki to reflect the latest directory changes.
ovibalea@gmail.com
parents: 192
diff changeset
    51
 # 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
    52
  * 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\)
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    53
  * SET SET QTDIR=<path to the QtSDK\Desktop\Qt\<your version>> (for example: c:\QtSDK\Desktop\Qt\4.7.3\)
193
f94b00c2ff70 Update the wiki to reflect the latest directory changes.
ovibalea@gmail.com
parents: 192
diff changeset
    54
 # 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
    55
 # 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
    56
212
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    57
= Additional Setup for Visual Studio 2010 =
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    58
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
    59
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    60
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
    61
 # 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
    62
 # 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
    63
  * \hedgewars\misc\winutils\lib\SDL.lib
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    64
  * \hedgewars\misc\winutils\lib\SDLmain.lib
d47acc7f7185 additional instruction for vs2010 by adam.madram (issue 379)
vittorio.giovara@gmail.com
parents: 195
diff changeset
    65
  * \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
    66
 # 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
    67
185
859277aa45f2 Add windows building wiki page.
ovibalea@gmail.com
parents:
diff changeset
    68
= Building process =
195
a4eb962ff8a3 Edited wiki page BuildingOnWindows through web user interface.
vittorio.giovara@gmail.com
parents: 194
diff changeset
    69
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.