This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Marble plugins (.so files) in Linux 64bit not working

Tags: None
(comma "," separated)
fr33
Registered Member
Posts
16
Karma
0
Hey all,

I have compiled marble in 64 bit linux (CentOS) and am able to run the marble application and view the map. But none of the plugin libraries show up in the marble application and I am unable to see why the program can't recognize the plugins. Does anyone have an idea why this might be the issue?

Many Thanks in advance.
User avatar
Earthwings
KDE Developer
Posts
172
Karma
1
OS
Can you run marble with the --debug-info command line parameter? The plugin loader writes some useful information about what it is doing (which plugins it attempts to load etc) to the shell.
fr33
Registered Member
Posts
16
Karma
0
Earthwings wrote:Can you run marble with the --debug-info command line parameter? The plugin loader writes some useful information about what it is doing (which plugins it attempts to load etc) to the shell.


Thanks for your replay; the error is shown as

Code: Select all
Plugin failure: "libCrosshairsPlugin.so" is not a valid Marble Plugin: "The plugin '/home/mycomp/marble_install/lib/marble/plugins/libCrosshairsPlugin.so' uses incompatible Qt library. Expected build key "x86_64 linux g++-4 full-config", got "i386 linux g++-4 full-config""


It seems as though the plugins are compiled in 32 bit, but marble itself is built as a 64 bit application, as running file marble gives:
Code: Select all
marble: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), not stripped


Also, the library itself is built in 64 bit:

Code: Select all
libmarblewidget.so.0.13.0: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), not stripped


I have a feeling there is a place in the make file which specifies what platform the plugin libraries are to be compiled in. If you have an idea where exactly it'd be I'd be grateful. o)
User avatar
bcooksley
Administrator
Posts
19765
Karma
87
OS
To the best of my knowledge - CMake always builds everything in the same build against the same set of libraries, etc - so this doesn't make sense.
Are you sure these aren't system wide or other pre-existing plugins rather than the ones you have just compiled?


KDE Sysadmin
[img]content/bcooksley_sig.png[/img]
fr33
Registered Member
Posts
16
Karma
0
You're right in that the library is in fact 64 bit version:

Code: Select all
/home/mycomp/marble_install/lib/marble/plugins/libWikipedia.so: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), not stripped


But maybe the error has something to do with using wrong QT path? I did some searches and it seems this has something to do with the make file settings in getting QT paths. I will hack around for a solution - if anything comes to your mind I'd appreciate it :)

Plugin failure: "libSatellitesPlugin.so" is not a valid Marble Plugin: "The plugin '/home/mycomp/marble_install/lib/marble/plugins/libSatellitesPlugin.so' uses incompatible Qt library. Expected build key "x86_64 linux g++-4 full-config", got "i386 linux g++-4 full-config""
User avatar
Earthwings
KDE Developer
Posts
172
Karma
1
OS
Not sure if it helps much - but you can change the Qt version used by cmake like this:
Code: Select all
PATH=/usr/local/Trolltech/Qt-4.8.0/bin/:${PATH} cmake ~/marble/src

CMakeCache.txt must not exist.
fr33
Registered Member
Posts
16
Karma
0
Thank you very much sirs - marble was using the wrong QT library and adjusting to correct QT has solved the problem, and all plugins seem to be available. ;D


Bookmarks



Who is online

Registered users: Bing [Bot], claydoh, Google [Bot], rblackwell