[[OutdatedPage]] = Windows with MingW with GCC 3.4.5 (outdated) = Note: This page is outdated. It describes how to build Orxonox with an old version of MinGW that ships with GCC 3.4.5. This works only with Ogre up to version 1.6 (which is included in the 4th dependency package). We recommend to use the current version of MinGW which works with the recent dependencies. See [wiki:WindowsMinGW/current] for an installation guide. However this guide is still present to help people that want to use an old version of GCC. == MinGW == {{{ #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" ''Info: MinGW is a collection of tools (like GCC and more), used to compile source code on Windows.'' }}} Download and install [http://svn.orxonox.net/downloads/windows/tools/mingw/MinGW-5.1.6.7z MinGW] (get 7-Zip [http://www.7-zip.org/ here]). (Note: If you use the old Ogre MinGW Toolbox instead, text in overlay elements will not be displayed correctly.) 1. Select "Download and install" 1. Select "Current" 1. Select "MinGW base tools", "g++ compiler", and "MinGW Make" 1. Chose an install path, default is {{{c:\mingw}}} but every other '''path without whitespaces''' works == MSYS == {{{ #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" ''Info: MSYS is a command shell, used to execute build scripts and more.'' }}} Download and install [http://downloads.sourceforge.net/mingw/MSYS-1.0.11.exe MSYS]. 1. Chose an install '''path without whitespaces''' and install MSYS 1. (On some systems the post installation doesn't start (cmd.exe shows up with an error)[[br]]In this case execute {{{c:\\postinstall\pi.bat}}}) 1. A command shell opens, answer yes (y) twice 1. Specify the path to your MinGW directory (by default this is {{{c:/mingw}}}). Switch to the home-directory of your MSYS installation: {{{c:\\home\\}}}[[br]] This is your homedirectory in MSYS, this is where the action takes place. '''In the following, we'll call this directory {{{c:\\}}} to make things shorter.''' 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.) == SVN == {{{ #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" ''Info: We use SVN to upload code to the server and to manage different versions (branches).'' }}} ==== Get SVN: ==== To use [wiki:code/tools/SVN SVN] on your system we recommend TortoiseSVN, a very useful GUI-client. [http://tortoisesvn.net/downloads Download] 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). ==== Get the source: ==== Check out the Orxonox-repository into a folder named "trunk", for example {{{c:\\trunk\}}}. '''It's very important to use a directory inside your MSYS homedirectory, otherwise you can't compile.''' * URL: {{{https://svn.orxonox.net/game/code/trunk/}}} * Checkout directory: {{{c:\\trunk\}}} Now do the same with the data repository and store it in a directoy called "data_extern": * URL: {{{https://svn.orxonox.net/game/data/trunk}}} * Checkout directory: {{{c:\\data_extern}}} Now you should have the following directories in your home: {{{ c:\\data_extern c:\\trunk }}} {{{ #!div style="background-color: #D0F0D0; border: solid 1px #000000;" In TortoiseSVN this is done by right clicking into {{{c:\\}}} and chosing "SVN Checkout...". ([attachment:wiki:dev/WindowsMinGW:orxonox_svn_checkout.gif see this picture]) Then set the URL of the repository to {{{https://svn.orxonox.net/game/code/trunk/}}} and the checkout directory to {{{c:\\trunk\}}} (checkout depth should be "Fully recursive" and revision "HEAD"). 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:dev/WindowsMinGW:orxonox_svn_checkout_trunk.gif see this picture]) }}} {{{ #!div style="background-color: #D0F0D0; border: solid 1px #000000; margin-top: 10px;" If you're not using TortoiseSVN, use the "svn co " command. See [wiki:code/tools/SVN SVN] for more information. }}} == Dependencies == {{{ #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" ''Info: Dependencies are external libraries that aren't included in the orxonox source.'' }}} Download the Orxonox dependencies: [http://svn.orxonox.net/downloads/windows/precompiled_dependencies/OrxonoxDeps_091009_4.0_MinGW.7z Download] (get 7-Zip [http://www.7-zip.org/ here]).[[br]] Extract the archive into {{{c:\\}}} Now you should have the following directories in your home: ([attachment:wiki:dev/WindowsMinGW:orxonox_directories.gif see this picture]) {{{ c:\\data_extern c:\\dependencies c:\\trunk }}} ==== OpenAL: ==== Make sure you have installed OpenAL, which might not be shipped with Windows. Download and install it from [http://connect.creativelabs.com/openal/Downloads/oalinst.zip here]. You can compile and run Orxonox without OpenAL, but no sound will be played. == CMake == {{{ #!div style="background-color: #D0D0F0; border: solid 1px #000000; margin-right: 200px;" ''Info: CMake is a build-system. It is used to generate make-files or project-files for IDEs'' }}} Download the latest binary release from [http://www.cmake.org/cmake/resources/software.html here] and install it. * '''While installing check the option to "add CMake to the system PATH"''' == Build Orxonox == 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: {{{ echo alias cm=\'cmake .. -G \"MSYS Makefiles\"\' >> ~/.profile source ~/.profile }}} Change into the trunk folder and create a build directory: {{{ cd trunk mkdir build cd build }}} 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: {{{ cm make }}} 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. 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. 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]. Compiling will take some time (CMake shows you the percentage). Be patient.[[br]] See some pictures of this: - [attachment:wiki:dev/WindowsMinGW:orxonox_build1.gif Step 1] - [attachment:wiki:dev/WindowsMinGW:orxonox_build2.gif Step 2] - [attachment:wiki:dev/WindowsMinGW:orxonox_build3.gif Step 3] == Run Orxonox == If everything worked fine, start Orxonox with {{{c:\\trunk\build\run.bat}}} (you can't execute orxonox.exe directly).