Important: Please read the Qt Code of Conduct -

Error when compiling a Marble example app.

  • Hi guys, I am using OpenSuse Leap and trying to compile an small aplication using marble. Of course this application uses QT to run and the headers are:

    #include <QtGui/QApplication>
    #include <marble/MarbleWidget.h>

    after compiling it with the next instructions :

    g++ -I /usr/include/qt4/ -I /usr/include/qt4/QtGui -I /usr/include/qt4/QtCore -o my_marble my_marble.cpp -lmarblewidget -lQtGui -lQtCore

    I get the next error:

    /usr/include/marble/MarbleWidget.h:23:19: fatal error: QPixmap: No such file or directory
    #include <QPixmap>

    I am not an expert on this things but I think it means that he cannot find the QPixmap library on the default path. After going a little bit around the libraries I found the reference to QPixmap on MarbleWidget.h.

    #include <QPixmap>

    Then again I supose the path must be a default one to find QPixmap on a certain place at my file system. Searching around a little bit I was able to found the QPixmap library on usr/include/Qt/QPixmap.h but because is called without the .h at the end I supose is not a library. Also I am unable to find any QPixmap using which command.

    My question is then, what should I do to solve this?. I know I need to give the correct path to the file, but there is not QPixmap file, there is only a qpixmap.h at usr/include/QT. Also from the compiling line I do no posses any directory called qt4 and the files QTGui and QTcore are located on usr/include/QT and not usr/include/qt4.

    using qmake -v I found that I am using QT version 4.8.6 in /usr/lib64 , after searching I found the qt4 directory but still no QPixmap. Could be something is lost in my system?.

    Thanks for any help, I keep searching :3

  • Lifetime Qt Champion

    Hi and welcome to devnet,

    Why not make a Qt project with your current project ? That would simplify things a lot for you. Also, check against which version of Qt was Marble compiled.

Log in to reply