QLandkarte for Windows

Date: 10-February 2008 

QLandkarte1) for Windows is built with the gnu compiler tools from minGW.

Requirements to build QLandkarte for Windows

In order to be able to compile and link QLandkarte on Microsoft Windows, you need to install the following software packages.

The open source version of Qt from Trolltech http://trolltech.com/.
Currently, the download page is: http://trolltech.com/developer/downloads/qt/windows/?searchterm=opensource

If you choose the Qt version with minGW, you should be set, otherwise you have to download and install the minGW tools
from http://www.mingw.org/.  I used the current version gcc-3.4.5 and mingw32-make 3.81. You don't need MSYS.

If you want a little bit of comfort: I used the eclipse IDE mit the C/C++ plugin and the new Qt plugin from Trolltech.

In order to read the messages sent by qDebug() you must use a program called debugview
http://technet.microsoft.com/es-ar/sysinternals/bb896647(en-us).aspx .

QLandkarte uses the following libraries which are supplied for your convenience in the subdirectory /libs:

PROJ.4 - Cartographic Projections Library
Pthreads-win32 - POSIX Threads for Win32

General procedure to compile and build:

Set the path and enviroment depending on your configuration:

path=x:\mingw\bin;x:\Qt\4.3.3\bin;%path%
set QMakeSpec=win32-g++
set QTDIR=x:\Qt\4.3.3

1) Rename common.in to common

2) Run qmake in your installation directory of QLandkarte:
          qmake QLandkarte.pro
    and then
          mingw32-make [debug | release | clean]

If everything goes well, you should have an executable QLandkarte.exe in the /bin subdirectory and several .dlls in the /plugin directory.
These dlls are only needed to connect to Google, NMEA Tcp or your Garmin device.

If you want to access your Garmin device via USB, you need to install the Garmin USB driver.

Current built was done with the following versions:

MinGW- latest version with windows API and other tools (MinGW-Installer 5.1.3 might not be sufficient)
gcc-3.4.5

Qt of Trolltech, version 4.3.3, open source version

Tested on Microsoft Windows XP and Vista.

TODO's:

Driver (*.dll) does not support all parts of the Linux version. -> USB (not all features tested, for example upload of icons), Serial not ported yet.

Hardware tested: etrex VISTA HCx, GPSMap60CSx

Trial and Error or what you should know when using something else.

I have tried to compile and build the program (v.0.5.3) using Microsoft Visual Studio 2005 with their compiler as well as with the Intel C++ compiler V10.0. In both cases I had to make several changes to the code. More over, several functions needed to be written, because QLandkarte uses some features of the C99 standard, which is not supported by the other two compilers. Finally I got the program to run, but it crashed when reading in simple gpx files. But the rest of the program except of the USB drivers seemed to work. Since the crash happened deep down in the Qt library, I decided to try the g++ version in minGW.  With immediate success.

1) Landkarte is the german word for map