I'am trying to compile a qt program.
Code:
dave@flaptop:~/qt$ cat hello.cpp
#include <qapplication.h>
#include <qlabel.h>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QLabel *label = new QLabel("Linux is wonderful", 0);
app.setMainWidget(label);
label->show();
return app.exec();
}
Then i'll do the following:
Code:
dave@flaptop:~/qt$ qmake -project
dave@flaptop:~/qt$ qmake qt.pro
If i'll compile it the compiler says:
Code:
dave@flaptop:~/qt$ make
g++ -c -pipe -Wall -W -O2 -DQT_NO_DEBUG -I/usr/lib/qt/mkspecs/default -I. -I. -I/usr/lib/qt/include -o hello.o hello.cpp
hello.cpp:11:2: warning: no newline at end of file
g++ -o qt hello.o -L/usr/X11R6/lib -lXext -lX11 -lm
hello.o(.text+0x1c): In function `main':
: undefined reference to `QApplication::QApplication(int&, char**)'
hello.o(.text+0x2c): In function `main':
: undefined reference to `QString::QString(char const*)'
hello.o(.text+0x4c): In function `main':
: undefined reference to `QLabel::QLabel(QString const&, QWidget*, char const*, unsigned int)'
hello.o(.text+0x61): In function `main':
: undefined reference to `QString::shared_null'
hello.o(.text+0x6c): In function `main':
: undefined reference to `QStringData::deleteSelf()'
hello.o(.text+0x79): In function `main':
: undefined reference to `QApplication::setMainWidget(QWidget*)'
hello.o(.text+0x8c): In function `main':
: undefined reference to `QApplication::exec()'
hello.o(.text+0x97): In function `main':
: undefined reference to `QApplication::~QApplication()'
hello.o(.text+0xc5): In function `main':
: undefined reference to `QApplication::~QApplication()'
hello.o(.text+0x10c): In function `main':
: undefined reference to `QString::shared_null'
hello.o(.text+0x117): In function `main':
: undefined reference to `QStringData::deleteSelf()'
hello.o(.gnu.linkonce.r._ZTV6QGList+0xc): undefined reference to `QGList::clear()'
hello.o(.gnu.linkonce.r._ZTV6QGList+0x10): undefined reference to `QGList::~QGList()'
hello.o(.gnu.linkonce.r._ZTV6QGList+0x14): undefined reference to `QGList::~QGList()'
hello.o(.gnu.linkonce.r._ZTV6QGList+0x18): undefined reference to `QPtrCollection::newItem(void*)'
hello.o(.gnu.linkonce.r._ZTV6QGList+0x20): undefined reference to `QGList::compareItems(void*, void*)'
hello.o(.gnu.linkonce.r._ZTV6QGList+0x24): undefined reference to `QGList::read(QDataStream&, void*&)'
hello.o(.gnu.linkonce.r._ZTV6QGList+0x28): undefined reference to `QGList::write(QDataStream&, void*) const'
hello.o(.gnu.linkonce.r._ZTI6QGList+0x8): undefined reference to `typeinfo for QPtrCollection'
collect2: ld returned 1 exit status
make: *** [qt] Error 1
dave@flaptop:~/qt$
libqt is available on this system:
Code:
dave@flaptop:~/qt$ locate libqt
/opt/kde/lib/libqtjava.so.1.0.0
/opt/kde/lib/libqtjava.la
/opt/kde/lib/libqtjava.so
/opt/kde/lib/libqtjavasupport.so.1.0.0
/opt/kde/lib/libqtmcop.la
/opt/kde/lib/libqtmcop.so
/opt/kde/lib/libqtjavasupport.la
/opt/kde/lib/libqtjavasupport.so
/opt/kde/lib/libqtmcop.so.1.0.0
/opt/kde/lib/libqtopiakonnector.la
/opt/kde/lib/libqtopiakonnector.so
/opt/kde/lib/libqtjava.so.1
/opt/kde/lib/libqtjavasupport.so.1
/opt/kde/lib/libqtmcop.so.1
/opt/google-earth/libqt-mt.so.3
/usr/lib/qt-3.3.7/lib/libqt-mt.so.3
/usr/lib/qt-3.3.7/lib/libqt-mt.prl
/usr/lib/qt-3.3.7/lib/libqt-mt.la
/usr/lib/qt-3.3.7/lib/libqt-mt.so
/usr/lib/qt-3.3.7/lib/libqt-mt.so.3.3.7
/usr/lib/qt-3.3.7/lib/libqt-mt.so.3.3
And i'll also copied the libqt files to /usr/X11R6/lib.