[Marble-devel] Help with MarbleWidget

Bryan Greenway rbgreenway at gmail.com
Tue Jul 27 00:46:28 CEST 2010


Hello All,

 

After MANY hours of frustration, I am still struggling with building an app
on Windows using Qt Creator, MinGW, and getting map updates via
OpenStreetMaps.  As recently as last night, I had my app running, but not
getting map updates.  Following a suggestion, I removed all my previous
installations of marble from my computer.  I then CLOSELY followed the
instructions from
<http://techbase.kde.org/Projects/Marble/WindowsCompiling>
http://techbase.kde.org/Projects/Marble/WindowsCompiling for compiling with
mingw in a CMD window run as administrator.  In fact, I did this twice,
recleaning my machine between each and got the exact results both times.  My
app won’t even run now, it compiles by when I try to run it I get: “<App
name> has stopped working, Windows is checking for a solution to the
problem”.  I think this is suggesting that I have a library link issue.

 

The only variation to the instructions (
<http://techbase.kde.org/Projects/Marble/WindowsCompiling>
http://techbase.kde.org/Projects/Marble/WindowsCompiling) was that I
downloaded a stable version of marble using svn (as directed from:
http://edu.kde.org/marble/obtain.php).

 

Here are the steps I followed:

1.      svn co
svn://anonsvn.kde.org/home/kde/branches/KDE/4.4/kdeedu/marble.  This put the
source in c:\marble

2.      Created a subdirectory c:\marble\build, and changed to that
directory

3.      Ran: cmake –G “MinGW Makefiles” –DQTONLY=ON
–DCMAKE_BUILD_TYPE=Release –DWITH_DESIGNER_PLUGIN=ON ..

Got a warning:

-- Not building with gpsd position provider

-- Configuring done

CMake Warning (dev) at src/lib/CMakeLists.txt:255 (add_executable):

  Policy CMP0003 should be set before this line.  Add code such as

 

    if(COMMAND cmake_policy)

      cmake_policy(SET CMP0003 NEW)

    endif(COMMAND cmake_policy)

 

  as early as possible but after the most recent call to

  cmake_minimum_required or cmake_policy(VERSION).  This warning appears

  because target "geodatatest" links to some libraries for which the linker

  must search:

 

    ws2_32, imm32, winmm

 

  and other libraries with known full path:

 

    C:/marble/build/src/lib/libmarblewidget.dll.a

    C:/Qt/2010.04/qt/lib/libQtCore4.a

 

  CMake is adding directories in the second list to the linker search path
in

  case they are needed to find libraries from the first list (for backwards

  compatibility with CMake 2.4).  Set policy CMP0003 to OLD or NEW to enable

  or disable this behavior explicitly.  Run "cmake --help-policy CMP0003"
for

  more information.

This warning is for project developers.  Use -Wno-dev to suppress it.

 

-- Generating done

-- Build files have been written to: C:/marble/build

 

4.      Ran: mingw32-make

Got an error at 99% complete:

[ 98%] Built target PluginManagerTest

[ 99%] Generating TestGeoData.moc

Scanning dependencies of target TestGeoData

[ 99%] Building CXX object tests/CMakeFiles/TestGeoData.dir/TestGeoData.obj

Linking CXX executable TestGeoData.exe

CMakeFiles\TestGeoData.dir\TestGeoData.obj:TestGeoData.cpp:(.text+0x1749):
undef

ined reference to `Marble::GeoDataTypes::GeoDataFolderType'

collect2: ld returned 1 exit status

mingw32-make[2]: *** [tests/TestGeoData.exe] Error 1

mingw32-make[1]: *** [tests/CMakeFiles/TestGeoData.dir/all] Error 2

mingw32-make: *** [all] Error 2

 

5.      Ran: mingw32-make install

Got an error:

 

c:\marble\build>mingw32-make install

[  1%] Built target svnversion

[ 78%] Built target marblewidget

[ 79%] Built target marble

[ 81%] Built target tilecreator

[ 82%] Built target geodatatest

[ 83%] Built target MarbleWidgetPlugin

[ 84%] Built target LatLonEditPlugin

[ 85%] Built target MarbleNavigatorPlugin

[ 85%] Built target CrosshairsPlugin

[ 85%] Built target GeoRendererPlugin

[ 85%] Built target CompassFloatItem

[ 86%] Built target GraticulePlugin

[ 86%] Built target OverviewMap

[ 86%] Built target MapScaleFloatItem

[ 86%] Built target StarsPlugin

[ 88%] Built target Photo

[ 89%] Built target Wikipedia

[ 94%] Built target Weather

[ 95%] Built target NavigationFloatItem

[ 96%] Built target QNamNetworkPlugin

[ 97%] Built target GeoPolygonTest

[ 97%] Built target KMLTest

[ 97%] Built target MarbleWidgetSpeedTest

[ 98%] Built target MarbleWidgetTest

[ 98%] Built target PluginManagerTest

Linking CXX executable TestGeoData.exe

CMakeFiles\TestGeoData.dir\TestGeoData.obj:TestGeoData.cpp:(.text+0x1749):
undef

ined reference to `Marble::GeoDataTypes::GeoDataFolderType'

collect2: ld returned 1 exit status

mingw32-make[2]: *** [tests/TestGeoData.exe] Error 1

mingw32-make[1]: *** [tests/CMakeFiles/TestGeoData.dir/all] Error 2

mingw32-make: *** [all] Error 2

 

 

I don’t know if these errors really matter or not.

 

Results:

 

1)      no directory C:\Program Files\marble, as was suggested would appear.

2)      I found a marble.exe in C:\marble\build\src, but it would not run
(complained about not be able to find libmarblewidget.dll), so I copied
c:\marble\build\src\lib\libmarblewidget.dll into the c:\marble\build\src
directory.  Marble still didn’t execute, but no longer complained
it would
just flash on then disappear.

3)      On http://techbase.kde.org/Projects/Marble/MarbleWindows, it says
that “You also have to copy near your .exe the data\ and plugins\
directories otherwise you will have no maps and no download.”, but there are
a couple /data and /plugins directories down inside my c:\marble directory.
I tried copying all of them into my app’s release directory (where the .exe
is), but this didn’t seem to help.

 

 

Any ideas?  Anyone, PLEASE!  This tool has such great potential!

 

Thanks,

 

Bryan

 

 

 

From: Sylvain Paré [mailto:sylvain.pare at gmail.com] 
Sent: Saturday, July 24, 2010 4:55 AM
To: Bryan Greenway
Cc: marble-devel at kde.org
Subject: Re: [Marble-devel] Help with MarbleWidget

 

It is this thread yeah.
But as you succeed to build marble install it! instead of doing a mix with
an old version of marble..
it is useless to do that way...unless you want to be sure to have things
that don't work......
kick your old version of marble and ....
In fact follow to the letters both tutos about marble on windows and it
should work.
THEN if not you may report what is going wrong (and your are welcome). 
But if you don't follow it, unless you know what your are doing, don't be
surprise to have 
some troubles :)
So yes use "data" and "plugin" rep as I wrote from the installed version of
marble (the one you compiled!)

good luck

CU

Sylvain

No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 9.0.851 / Virus Database: 271.1.1/3025 - Release Date: 07/24/10
01:36:00

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/marble-devel/attachments/20100726/993f526c/attachment-0001.htm 


More information about the Marble-devel mailing list