The application "marble" could run well with the dll "marblewidget.dll". does not it mean the dll is useful?
The application "marble" could run well with the dll "marblewidget.dll". does not it mean the dll is useful?
If it links with marblewidget.dll then yes. I think it might be easiest to just call one of the authors of marble and ask them directly.
peirenjun (31st October 2009)
hehe
thanks very much! I will try!
Hi,
I try to add the MarbleWidget in my application with Qt creator V1.3.0 based on Qt 4.6.0 running on Windows XP.
I had try the 2 ways :
- Add a MarbleWidget with Qt Designer like explained here : http://techbase.kde.org/Projects/Marble/MarbleDesigner
- Using Marble API like explained here : http://techbase.kde.org/Projects/Marble/MarbleCPlusPlus
But the 2 ways failed!
I understand that to use MarbleWidget or Marble API on Windows I had to rebuild it.
- I downloaded the source code from : http://edu.kde.org/marble/download.php
- I installed CMake.
- I follow the instructions from "Build Marble as a Qt only application" : http://edu.kde.org/marble/obtain.php and http://techbase.kde.org/Projects/Marble/MarbleDesigner
1) Launch Qt Command prompt
2) Add cmake and mingw-32 (C:\Qt\2009.05\mingw\bin) to the PATH
3) Put Marble sources in D:\marble, and create a D:\marble-plugin directory
4) command "cmake -DQTONLY=ON -DWITH_DESIGNER_PLUGIN=ON -G "MinGW Makefiles" ../marble"
5) command "mingw32-make"
6) command "mingw32-make install"
Until now, no problem.
C:\Program files\marble is created and I can found libMarbleWidgetPlugin.dll, libMarbleNavigatorPlugin.dll , libLatLonEditPlugin.dll in C:\Qt\2009.05\qt\plugins\designer directory.
But I don't have the file libMarbleWidgetPlugin.so or MarbleWidgetPlugin.so in my Qt's designer directory like explained here : http://techbase.kde.org/Projects/Marble/MarbleDesigner
Perhaps this file exists only on any linux OS ?
When I launch Qt designer, to add a MarbleWidget (my first way), I don't have the Mable Widget in my Widget Box.
And in the Help==>Plugins Infos window of Qt designer menu, I can see that the C:/Qt/2009.05/qt/plugins/designer/libLatLonEditPlugin.dll (and others Marble plugins) are in the Failed Plugins directory !
(You can see attached file : "Plugins_Info_QtDesigner_screenshot.png").
It seems that there is a mix with debug and release library ??
I try the 2nd way using the API marble :
In my .pro file I had :
INCLUDEPATH += ../marble-plugin/src/lib
INCLUDEPATH += "C:/Program Files/marble/include/marble"
QMAKE_LIBDIR += ../marble-plugin/src/lib
win32:LIBS += libmarblewidget.dll
In main.cpp is :
...
#include <MarbleWidget.h>
using namespace Marble;
....
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// Create a Marble QWidget without a parent
MarbleWidget *mapWidget = new MarbleWidget();
// Load the OpenStreetMap map
mapWidget->setMapThemeId("earth/openstreetmap/openstreetmap.dgml");
// Set a server for downloading map data, if needed
// mapWidget->setDownloadUrl("http://download.kde.org/apps/marble/");
mapWidget->show();
return a.exec();
}
The program build but when I start the program, I've a runtime error window !! (See "Runtime_Error_screenshot.png" attached file).
Another thing :
When I start the marble.exe in C:\Program FIles\marble, I have a error window (see "Error_Window_MarbleExe" attached file).
Is it normal ??
For information, before compiling marble I've install Marble-Qt 0.8 for MS_Windows from http://edu.kde.org/marble/download.php.
The Marble.exe in C:\Program Files\Marble 0.8.0 works well.
Any help will be greatly appreciated.
Bests regards.
Last edited by pierreRFT; 17th December 2009 at 13:48. Reason: add attached files :)
Bookmarks