Marble/WindowsCompiling

From KDE TechBase
Revision as of 14:26, 3 June 2010 by GarthPS (talk | contribs) (some explanation)

This page present only how to build Marble on windows. There will be an other howto about using libmarblewidget in a application build for windows.

  1. Marble project uses CMake to manage the building process depending of your needs : operating system, build options.. So, first of all, you need to download the latest CMake binary for windows. Install it and don't forget during the installation to check "define cmake path in environment variables" or something like that.
  2. Marble is a Qt dependent application ("No way!?" "Way!!" :) ) so you also need Qt. Download the latest Qt sdk for windows and install it.
  3. You have to add mingw's path and qmake's path in the environment variable. (use C:\Qt\20xx.xx.x\MinGW\bin and C:\Qt\20xx.xx.x\qt\bin )(follow those instructions if needed). To check that cmake.exe, gcc.exe and qmake.exe are in your %PATH% :
    1. open a commandline-window (start->run program->cmd)
    2. run "cmake" , it should give you a help message and show you what compilation options it found
    3. run "gcc -v" , it should give you version info
    4. run "qmake" , it should give you help output
    5. (Hint: make sure not to add the directory %QT-installation-dir%/bin but rather %QT-installation-dir%/qt/bin, there are for some reason incompatible dll's that might lead to crashes)
    6. If one of those command are not known then something is wrong.
  4. Then check out marble's svn : svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdeedu/marble
  5. now you can compile marble :
    1. open the cmd-window
    2. cd to the marble dir
    3. create a build directory (mkdir build)
    4. cd build
    5. cmake -G "MinGW Makefiles" -DQTONLY=ON -DCMAKE_BUILD_TYPE=Release .. (add -DWITH_DESIGNER_PLUGIN=ON if you want the MarbleWidget Plugin )(note that the "-DCMAKE_BUILD_TYPE=Release" is important because without it you will have trouble like no downloading tiles etc)
    6. mingw32-make (you can add "-j2" if you have a 2 cores cpu)
    7. mingw32-make install (Note: if you are under Windows seven you must be root to install marble in the standard place. See this )
  6. Now if all went well you should find marble.exe in Program Files>marble> directory.

Test it... Yeah!

Tested with CMake 2.8.1, Qt sdk 2010.02.1 ( Qt 4.6.2 ; Qt Creator 1.3.1 ; MinGW 3.15 ; GCC4.4.0 ) and rev. 1128605 of marble