1

我正在尝试编写一个使用 QOpenGLWidget 的 C++ 应用程序,但 Qt Creator 在这一行给出了“'QOpenGLWidget' file not found”错误:

#include <QOpenGLWidget>

文档说 QOpenGLWidget 是在 Qt 5.4 中引入的,我相信我正在运行 Qt 5.12.1;qmake --version给出:

QMake version 3.1
Using Qt version 5.12.1 in /home/oreilly/Qt5.12.1/5.12.1/gcc_64/lib

而且,在Qt Creator 菜单Tools -> Options... -> Kits 中也表示Qt 5.12.1。Qt Creator 允许我使用#include <QOpenGLWindow>(也与 QOpenGLWidget 一起在 Qt 5.4 中引入)编译和链接 OpenGL 应用程序而不会出错。

我究竟做错了什么?QOpenGLWidget 在哪里?

4

1 回答 1

3

QOpenGLWidget不是主要的 QtCore/QtWidgets 库的一部分;相反,它是一个单独的(QtOpenGL)库的一部分,其头文件默认位于一个不属于 Qt 包含路径的目录中。

幸运的是,很容易将 QtOpenGL 的头文件添加到包含路径中;只需将以下行插入您的 .pro 文件:

QT += opengl 

...然后运行qmake以更新您的 Makefile/Project 文件,您应该能够使用 OpenGL 类进行编译。

于 2019-06-20T04:01:21.487 回答