0

我看过有人说现在需要 Qt 5 项目将小部件添加到 QT 变量的帖子,这就是为什么 netbeans 中的简单 Qt 示例不起作用的原因:不能包含 QtGui/QApplication -> 没有这样的文件或目录。

如何将此添加到 QT 变量?我是否必须为 IDE 或 .bashrc 或不知何故的每个项目执行此操作?

4

1 回答 1

2

问题是由于链接错误。这是因为它没有与 QtWidgets 链接。

g++ -m64 -Wl,-rpath,/opt/Qt5.0.1/5.0.1/gcc_64 -Wl,-rpath,/opt/Qt5.0.1/5.0.1/gcc_64/lib -o dist/Debug/GNU-Linux-x86/QtApplication_2 build/Debug/GNU-Linux-x86/main.o   -L/usr/X11R6/lib64 -L/opt/Qt5.0.1/5.0.1/gcc_64/lib -lQt5Gui -lQt5Core -lGL -lpthread 

首先我检查了使用来自 QtCore 的东西仍然有效。代码是:

#include <QtCore/QCoreApplication>

int main(int argc, char *argv[]) {
    // initialize resources, if needed
    // Q_INIT_RESOURCE(resfile);

    QCoreApplication a(argc, argv);

    // create and show your widgets here

    return a.exec();
}

很好,所以我知道这只是链接错误。我仍然不知道要添加什么,因为您在 Netbeans 的项目属性的 Qt 选项卡中没有 QtWidget。但反复试验表明,检查此选项卡(模块)上的 QtOpenGl 就足够了,然后将其链接到更多库:

g++ -m64 -Wl,-rpath,/opt/Qt5.0.1/5.0.1/gcc_64 -Wl,-rpath,/opt/Qt5.0.1/5.0.1/gcc_64/lib -o dist/Debug/GNU-Linux-x86/QtApplication_1 build/Debug/GNU-Linux-x86/main.o   -L/usr/X11R6/lib64 -L/opt/Qt5.0.1/5.0.1/gcc_64/lib -lQt5OpenGL -lQt5Widgets -lQt5Gui -lQt5Core -lGL -lpthread
于 2013-02-27T19:13:34.213 回答