| 1 | {{{ |
| 2 | #!div align="center" style="border:1px outset #007f96;padding: 0.5em 1em 0.5em 1em;background: #9fd4de;-moz-border-radius:10px" |
| 3 | [[Image(icons:old.png, 50, left)]] |
| 4 | [[Image(icons:old.png, 50, right)]] |
| 5 | '''This is an outdated page! ''' [[br]] |
| 6 | This page is very old and the content is not up to date. [[br]] |
| 7 | Not everything (if any) which is written here will be in the final game! |
| 8 | }}} |
| 9 | |
| 10 | Note: To build Orxonox with MinGW we now use the MinGW-w64 packages. Go [wiki:WindowsMinGW/current here] for a description of the current build process. |
| 11 | |
| 12 | [[br]] |
| 13 | |
| 14 | = Windows with MingW32 and GCC (Outdated) = |
| 15 | |
| 16 | == CMake == |
| 17 | |
| 18 | {{{ |
| 19 | #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" |
| 20 | ''Info: CMake is a build-system. It is used to generate make-files or project-files for IDEs'' |
| 21 | }}} |
| 22 | |
| 23 | Download the latest binary release from [http://www.cmake.org/download/ here] and install it. |
| 24 | * '''While installing check the option to "add CMake to the system PATH"''' |
| 25 | |
| 26 | == MinGW == |
| 27 | |
| 28 | {{{ |
| 29 | #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" |
| 30 | ''Info: MinGW is a collection of tools (like GCC and more), used to compile source code on Windows.'' |
| 31 | }}} |
| 32 | |
| 33 | Download and install the latest version of [http://www.mingw.org/download/installer MinGW]. |
| 34 | 1. Chose an install path, default is {{{c:\mingw}}} but every other '''path without whitespaces''' works |
| 35 | 1. Default settings will do fine. Continue and let the installer download all packages. Continue again. |
| 36 | 1. In the MinGW Installation Manager select "mingw32-base" and "mingw32-gcc-g++" |
| 37 | 1. Click Installation -> Apply Changes, then click Apply and wait for the download to finish |
| 38 | 1. Wait until the installer downloaded and installed all packages (may take a while) |
| 39 | |
| 40 | == MSYS == |
| 41 | |
| 42 | {{{ |
| 43 | #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" |
| 44 | ''Info: MSYS is a command shell, used to execute build scripts and more.'' |
| 45 | }}} |
| 46 | |
| 47 | Download and install [http://downloads.sourceforge.net/mingw/MSYS-1.0.11.exe MSYS]. |
| 48 | 1. Chose an install '''path without whitespaces''' and install MSYS |
| 49 | 1. (On some systems the post installation doesn't start (cmd.exe shows up with an error)[[br]]In this case execute {{{c:\<msys-install-path>\postinstall\pi.bat}}}) |
| 50 | 1. A command shell opens, answer yes (y) twice |
| 51 | 1. Specify the path to your MinGW directory (by default this is {{{c:/mingw}}}). |
| 52 | |
| 53 | Switch to the home-directory of your MSYS installation: {{{c:\<msys-install-path>\home\<username>\}}}[[br]] |
| 54 | This is your homedirectory in MSYS, this is where the action takes place. |
| 55 | |
| 56 | '''In the following, we'll call this directory {{{c:\<msys-homedir>\}}} to make things shorter.''' |
| 57 | |
| 58 | Note: MSYS installs two shortcuts (by default in {{{Start/Programs/MinGW/MSYS/}}}): 1. "MSYS" (black background; an extension of window's cmd.exe) and 2. "MSYS (rxvt)" (yellow background; a more elaborate shell). We recommend the rxvt version, because it can be resized to full-screen, but Orxonox works with both. (Additional note: The sortcut on the desktop links to the worse version.) |
| 59 | |
| 60 | |
| 61 | == SVN == |
| 62 | |
| 63 | {{{ |
| 64 | #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" |
| 65 | ''Info: We use SVN to upload code to the server and to manage different versions (branches).'' |
| 66 | }}} |
| 67 | |
| 68 | ==== Get SVN: ==== |
| 69 | To use [wiki:SVN] on your system we recommend TortoiseSVN, a very useful GUI-client. [http://tortoisesvn.net/downloads Download] |
| 70 | |
| 71 | TortoiseSVN is a shell extension. You can use it within Windows Explorer, which is very practical. Most options are available through the context menu (right mouse button). |
| 72 | |
| 73 | |
| 74 | ==== Get the source: ==== |
| 75 | Check out the Orxonox-repository into a folder named "trunk", for example {{{c:\<msys-homedir>\trunk\}}}. '''It's very important to use a directory inside your MSYS homedirectory, otherwise you can't compile.''' |
| 76 | * URL: {{{https://svn.orxonox.net/game/code/trunk/}}} |
| 77 | * Checkout directory: {{{c:\<msys-homedir>\trunk\}}} |
| 78 | |
| 79 | Now do the same with the data repository and store it in a directoy called "data_extern": |
| 80 | * URL: {{{https://svn.orxonox.net/game/data/trunk}}} |
| 81 | * Checkout directory: {{{c:\<msys-homedir>\data_extern}}} |
| 82 | |
| 83 | Now you should have the following directories in your home: |
| 84 | {{{ |
| 85 | c:\<msys-homedir>\data_extern |
| 86 | c:\<msys-homedir>\trunk |
| 87 | }}} |
| 88 | |
| 89 | {{{ |
| 90 | #!div style="background-color: #D0F0D0; border: solid 1px #000000;" |
| 91 | In TortoiseSVN this is done by right clicking into {{{c:\<msys-homedir>\}}} and chosing "SVN Checkout...". ([attachment:wiki:WindowsMinGW:orxonox_svn_checkout.gif see this picture]) |
| 92 | |
| 93 | Then set the URL of the repository to {{{https://svn.orxonox.net/game/code/trunk/}}} and the checkout directory to {{{c:\<msys-homedir>\trunk\}}} (checkout depth should be "Fully recursive" and revision "HEAD"). |
| 94 | Accept the certificate and enter your username and password in the authentication form (only if it's the first time you check out code from our server). ([attachment:wiki:WindowsMinGW:orxonox_svn_checkout_trunk.gif see this picture]) |
| 95 | }}} |
| 96 | {{{ |
| 97 | #!div style="background-color: #D0F0D0; border: solid 1px #000000; margin-top: 10px;" |
| 98 | If you're not using TortoiseSVN, use the "svn co <repository> <directory>" command. See [wiki:SVN] for more information. |
| 99 | }}} |
| 100 | |
| 101 | == Dependencies == |
| 102 | |
| 103 | {{{ |
| 104 | #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" |
| 105 | ''Info: Dependencies are external libraries that aren't included in the orxonox source.'' |
| 106 | }}} |
| 107 | |
| 108 | Download the Orxonox dependencies: [http://svn.orxonox.net/downloads/windows/precompiled_dependencies/OrxonoxDeps_131003_7.0_MinGW-gcc48.7z Download] (get 7-Zip [http://www.7-zip.org/ here]).[[br]] |
| 109 | Extract the archive into {{{c:\<msys-homedir>\}}} |
| 110 | |
| 111 | Now you should have the following directories in your home: ([attachment:wiki:WindowsMinGW:orxonox_directories.gif see this picture]) |
| 112 | {{{ |
| 113 | c:\<msys-homedir>\data_extern |
| 114 | c:\<msys-homedir>\dependencies |
| 115 | c:\<msys-homedir>\trunk |
| 116 | }}} |
| 117 | |
| 118 | ==== OpenAL: ==== |
| 119 | Make sure you have installed OpenAL, which might not be shipped with Windows. Download and install it from [http://www.openal.org/downloads/oalinst.zip here]. |
| 120 | |
| 121 | == Build Orxonox == |
| 122 | First we add an alias to the profile of MSYS which helps us creating make-files with CMake. Open the MSYS console and type the following lines: |
| 123 | {{{ |
| 124 | echo alias cm=\'cmake .. -G \"MSYS Makefiles\"\' >> ~/.profile |
| 125 | source ~/.profile |
| 126 | }}} |
| 127 | |
| 128 | Change into the trunk folder and create a build directory: |
| 129 | {{{ |
| 130 | cd trunk |
| 131 | mkdir build |
| 132 | cd build |
| 133 | }}} |
| 134 | |
| 135 | Now we use the alias "cm" we created before. This shortcut will invoke CMake and create the Makefiles. Type the following into the MSYS console: |
| 136 | {{{ |
| 137 | cm |
| 138 | make |
| 139 | }}} |
| 140 | The first command ({{{cm}}}) will check your system (and the dependency directory) for all needed libraries, create the configuration and generate the makefiles. The second command ({{{make}}}) builds Orxonox. |
| 141 | |
| 142 | If you have a multicore CPU, use the {{{-j [arg]}}} option for {{{make}}} (where {{{[arg]}}} is the number of parallel build threads). For example {{{make -j3}}} will spawn 3 threads, which is a reasonable number for a dual-core CPU. |
| 143 | |
| 144 | If you get an error while executing one of those steps, report it in the [http://forum.orxonox.net/ Forum] or ask us in [irc://irc.orxonox.net/orxonox IRC]. |
| 145 | |
| 146 | Compiling will take some time (CMake shows you the percentage). Be patient.[[br]] |
| 147 | |
| 148 | See some pictures of this: |
| 149 | - [attachment:wiki:WindowsMinGW:orxonox_build1.gif Step 1] |
| 150 | - [attachment:wiki:WindowsMinGW:orxonox_build2.gif Step 2] |
| 151 | - [attachment:wiki:WindowsMinGW:orxonox_build3.gif Step 3] |
| 152 | |
| 153 | == Run Orxonox == |
| 154 | If everything worked fine, start Orxonox with {{{c:\<msys-homedir>\trunk\build\run.bat}}} (you can't execute orxonox.exe directly). |