2

所以我正在尝试使用 VS2013 升级我们的 QT 5.5 项目以使用 VS2015 使用 QT 5.7。在编译期间正确安装和设置所有内容后,我的一些文件错误并出现错误

严重性代码描述项目文件行抑制状态错误(活动)标识符“GLdouble”未定义 myProject c:\Qt\5.7\msvc2015_64\include\QtGui\qopenglfunctions.h 587

我有点不知所措,甚至开始寻求解决这个问题,因为这似乎是 QT 本身的问题?

使用 QT 5.7 的 Web 安装程序,我在 QT 5.7 下选择了每个 QT 库,因为我不确定我是否只是缺少一个库。

4

2 回答 2

1

我认为您构建了包含框架的Qt库。ANGLE

默认情况下,Qt 配置为使用 ANGLE,它与 Qt 捆绑并依赖于 DirectX SDK(来自文档)

http://doc.qt.io/qt-5/configure-options.html

删除对ANGLE.

如果您配置 Qt 库:

您必须使用-opengl选项来配置QtOpenGL在目标系统中使用。

在配置您的 Qt 版本时(在使用 之前nmake),请尝试以下操作。

configure -debug-and-release -opengl desktop(以及其他选项)。

这不包括ANGLE您构建的Qt库,并且您的OpenGL功能按预期工作。

什么是角度?:

ANGLE 代表几乎原生图形层引擎。

一种跨平台图形库,使用硬件支持的图形 API。

有关每个平台的 ANGLE 支持的简要信息,下面的链接中提供了一个表格。

https://chromium.googlesource.com/angle/angle/+/master/README.md

于 2017-04-17T16:43:51.930 回答
0

Just upgraded to Qt 5.12.1 and VS 2017 15.9.6 from Qt 5.2.0 and VS 2012. In my case, the error was "syntax error: identifier 'GLdouble'" - I just needed to add a new pre-processor directive, QT_OPENGL_ES.

于 2019-02-05T19:42:38.823 回答