Marble/MaemoEnvironment: Difference between revisions
Earthwings (talk | contribs) Created page with '=== Maemo SDK / Scratchbox Setup === Developing for Maemo based devices does not mean to write software and compile on the device itself. Most of the development happens on norma...' |
Earthwings (talk | contribs) |
||
Line 29: | Line 29: | ||
=== Running Marble === | === Running Marble === | ||
Some maps have to be created at the first start of Marble. Currently this is not supported for Maemo. You can copy the files from another system or start up with a map like OpenStreetMap which does not need data creation. The latter is accomplished as follows: | |||
<code bash> | |||
nano -w ~/.config/kde.org/"Marble Desktop Globe.conf" | |||
</code> | |||
Insert the following two lines (create the file and directory if they do not exist): | |||
[MarbleWidget] | |||
mapTheme=earth/openstreetmap/openstreetmap.dgml | |||
Execute the marble binary with the help of run-standalone.sh, a script provided by the Maemo platform to setup a working environment. | Execute the marble binary with the help of run-standalone.sh, a script provided by the Maemo platform to setup a working environment. | ||
<code bash> | <code bash> | ||
[sbox-FREMANTLE_X86: ~] > run-standalone.sh marble | [sbox-FREMANTLE_X86: ~] > run-standalone.sh marble | ||
</code> | </code> | ||
Marble should start up and become visible in Xephyr now. It will look like this: [[File:MarbleMaemoRouting.png]] |
Revision as of 11:39, 27 March 2010
Maemo SDK / Scratchbox Setup
Developing for Maemo based devices does not mean to write software and compile on the device itself. Most of the development happens on normal desktop systems. A device like a N900 is indeed not needed: The scratchbox environment emulates it for you. Please follow the Maemo SDK Guidelines in the Maemo Wiki to setup scratchbox on your system. After package installation, follow the guide to start the SDK UI. You should end up with a scratchbox shell using the FREMANTLE_X86 target. Additionally, start the Maemo UI in Xephyr as described.
Compiling Marble
To strip down the number of dependencies, we will use the Qt-based version of Marble. The compilation requires cmake as the build system and Qt development libraries. Make sure both are installed:
[sbox-FREMANTLE_X86: ~] > apt-get install cmake libqt4-dev
With the necessary dependencies in place we proceed to the next step, checking out the Marble source code.
[sbox-FREMANTLE_X86: ~] > mkdir -p ~/marble/{src,build}
[sbox-FREMANTLE_X86: ~] > svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdeedu/marble ~/marble/src
Once all files were downloaded, prepare the compilation step:
[sbox-FREMANTLE_X86: ~] > cd ~/marble/build
[sbox-FREMANTLE_X86: ~] > cmake -DQTONLY=Yes ../src
The first cmake call may fail because of a missing qtdesigner dependency. At the time of writing, the qt4-designer package is broken. As a workaround, remove the ${QT_QTDESIGNER_INCLUDE_DIR} line in ~/marble/src/src/tilecreator/CMakeLists.txt and re-run the cmake command.
Once cmake finished successfully, compile and install Marble:
[sbox-FREMANTLE_X86: ~] > make install
Running Marble
Some maps have to be created at the first start of Marble. Currently this is not supported for Maemo. You can copy the files from another system or start up with a map like OpenStreetMap which does not need data creation. The latter is accomplished as follows:
nano -w ~/.config/kde.org/"Marble Desktop Globe.conf"
Insert the following two lines (create the file and directory if they do not exist):
[MarbleWidget] mapTheme=earth/openstreetmap/openstreetmap.dgml
Execute the marble binary with the help of run-standalone.sh, a script provided by the Maemo platform to setup a working environment.
[sbox-FREMANTLE_X86: ~] > run-standalone.sh marble
Marble should start up and become visible in Xephyr now. It will look like this: