Laitoin Trustyn koneeseen ja hain paketeista qtcreatorin. Kun yritin kääntää Hello-ohjelmaa, tulee tällaiset virheet
make
g++ -m64 -Wl,-O1 -o hello hello.o -L/usr/X11R6/lib64 -lQt5Gui -L/usr/lib/x86_64-linux-gnu -lQt5Core -lGL -lpthread
hello.o: Funktiossa ”QString::~QString()”:
hello.cpp:(.text._ZN7QStringD2Ev[_ZN7QStringD5Ev]+0x14): määrittelemätön viite kohteeseen ”QString::free(QString::Data*)”
hello.o: Funktiossa ”main”:
hello.cpp:(.text.startup+0x1d): määrittelemätön viite kohteeseen ”QApplication::QApplication(int&, char**, int)”
hello.cpp:(.text.startup+0x5d): määrittelemätön viite kohteeseen ”QLabel::QLabel(QString const&, QWidget*, QFlags<Qt::WindowType>)”
hello.cpp:(.text.startup+0x78): määrittelemätön viite kohteeseen ”QApplication::exec()”
Käännän ohjelman komennoilla
qmake -project
qmake
make
kun olen päätteellä hakemistossa Hello, ja ohjelma on tällainen
#include <QApplication>
#include <QLabel>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QLabel *label = new QLabel("Hello Qt!");
label->show();
return app.exec();
}
Kyse on varmaan pikkusäädöistä, mutta kun kaikki on peruspaketeista, lisäsäätöjä ei toisaalta pitäisi tarvita.