QT Creator 中使用 QOpenGLContext 无法识别的 OpenGL 函数
Unrecognized OpenGL functions with QOpenGLContext in QT Creator
我想在 QT Creator 中制作一个跨平台的 OpenGL Qt 项目。我克隆了这个存储库
https://github.com/advancingu/Qt5OpenGL
到我的 Mac,并且能够构建和编译。它在黑色背景上渲染了一个彩虹三角形。
我尝试在 Windows 上构建,但出现以下编译器错误;
undefined reference to '_imp_glGetError@0'
undefined reference to '_imp_glGetString@04'
undefined reference to '_imp_glGetString@04'
undefined reference to '_imp_glGetString@04'
undefined reference to '_imp_glGetString@04'
In function 'ZN15BasicUsageScene6renderEV:
undefined reference to '_imp_glClear@4'
undefined reference to '_imp_glDrawArrays@4'
...等等。
我需要做什么来构建项目?我在 Windows 8.1 64 位。我的项目是用MinGW_32bit-Debug制作的
或者,如果有构建跨平台 QT Creator OpenGL 项目的好方法,我会洗耳恭听。我已经花了至少十几个小时试图在我的项目文件夹中导入 GLEW 库,但无济于事(我的项目带有导入 GLEW 库实际上抛出了完全相同的错误)。但我认为使用 QT 内置的 OpenGL 功能是最好的方法
如今,很多人(包括我自己)使用 GLLoadGen 来访问 OpenGL,而不是 GLEW。正如您所说,Qt 还提供了您可以使用的自己的 GL 绑定,因此您也不需要。
您link使用 OpenGL 的情况如何?在 Windows 你必须 link 到 "opengl32"。项目文件似乎没有这样做,但如果您添加 Qt Gui,qmake 可能会自动执行此操作。
我唯一能想到的另一件事是您的 windows 安装有问题,例如配置错误/缺少驱动程序。特别是如果,正如你所说,GLEW 给出了同样的问题。你能在这台机器上构建任何使用 OpenGL 的程序吗?例如,使用 SFML 或 SDL。
我想在 QT Creator 中制作一个跨平台的 OpenGL Qt 项目。我克隆了这个存储库 https://github.com/advancingu/Qt5OpenGL 到我的 Mac,并且能够构建和编译。它在黑色背景上渲染了一个彩虹三角形。
我尝试在 Windows 上构建,但出现以下编译器错误;
undefined reference to '_imp_glGetError@0'
undefined reference to '_imp_glGetString@04'
undefined reference to '_imp_glGetString@04'
undefined reference to '_imp_glGetString@04'
undefined reference to '_imp_glGetString@04'
In function 'ZN15BasicUsageScene6renderEV:
undefined reference to '_imp_glClear@4'
undefined reference to '_imp_glDrawArrays@4'
...等等。
我需要做什么来构建项目?我在 Windows 8.1 64 位。我的项目是用MinGW_32bit-Debug制作的
或者,如果有构建跨平台 QT Creator OpenGL 项目的好方法,我会洗耳恭听。我已经花了至少十几个小时试图在我的项目文件夹中导入 GLEW 库,但无济于事(我的项目带有导入 GLEW 库实际上抛出了完全相同的错误)。但我认为使用 QT 内置的 OpenGL 功能是最好的方法
如今,很多人(包括我自己)使用 GLLoadGen 来访问 OpenGL,而不是 GLEW。正如您所说,Qt 还提供了您可以使用的自己的 GL 绑定,因此您也不需要。
您link使用 OpenGL 的情况如何?在 Windows 你必须 link 到 "opengl32"。项目文件似乎没有这样做,但如果您添加 Qt Gui,qmake 可能会自动执行此操作。
我唯一能想到的另一件事是您的 windows 安装有问题,例如配置错误/缺少驱动程序。特别是如果,正如你所说,GLEW 给出了同样的问题。你能在这台机器上构建任何使用 OpenGL 的程序吗?例如,使用 SFML 或 SDL。