我正在尝试编写一个使用QOpenGLWidget的C++应用程序,但是qtcreator在此行上显示“找不到'QOpenGLWidget'文件”错误:
#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
此外,qtcreator工具->选项->套件也表示Qt 5.12.1。 qtcreator允许我包括QOpenGLWindow(也在Qt 5.4中与QOpenGLWidget一起引入),编译和链接OpenGL应用程序而没有错误。
我究竟做错了什么? QOpenGLWidget在哪里?
谢谢
汤姆
最佳答案
QOpenGLWidget
不是主要QtCore / QtWidgets库的一部分;而是它是单独(QtOpenGL)库的一部分,该库的 header 位于默认情况下不属于Qt包含路径的目录中。
幸运的是,将QtOpenGL的 header 添加到include-path很容易。只需将以下行插入.pro文件即可:
QT += opengl
...,然后运行
qmake
更新您的Makefile / Project文件,您应该能够使用OpenGL类进行编译。