Qt 5.5.1:找不到-lGL

Qt 5.5.1: Cannot find -lGL

我在 Qt 5.3.1 上开发了一个 GUI 应用程序。我正在使用 Qt Creator 3.1.2 (based on Qt 5.3.1) 构建我的 GUI 应用程序并且能够成功构建和部署我的应用程序。

我想更新我的 qt creator,为此我安装了最新的 Qt Creator 3.5.1 (based on Qt 5.5.1) 并提供了必要的更改以在这个最新的 qt creator 上构建我现有的 QT GUI 应用程序。一切顺利,即将创建最终的可执行文件,构建终止并显示以下错误信息:

/usr/bin/ld: cannot find -lGL
collect2: error: ld returned 1 exit status
The process "/usr/bin/make" exited with code 2.
Error while building/deploying project test-app (kit: Desktop Qt 5.5.1 GCC 32bit)

我尝试在线搜索并找到了更新 Mesa 包的建议!。 [如果是这样,为什么同一个应用程序在我的 Qt Creator 3.1.2 上构建良好。在尝试修复更新 mesa 包之前,我想了解一些细节。]

有人可以提供一些建议来解决这个问题吗?提前致谢。

编辑: 当我在 Qt 5.3.1 上构建我的 GUI 应用程序时,以下库链接到我的最终可执行文件:

-lQt5Quick -lQt5Gui -lQt5Qml -lQt5Network -lQt5Sql -lQt5Core -lGLESv2 -lEGL -lGAL

当我在 Qt 5.5.1 版本上构建相同的应用程序时,以下库链接到我的最终可执行文件:

-lQt5Quick -lQt5Gui -lQt5Qml -lQt5Network -lQt5Sql -lQt5Core -lGL

我必须按照@Kyrylo Polezhaiev 的建议更新 mesa 包以解决 -lGL 问题

我在这里遗漏了一块: 旧 qt 版本 (5.3.1) 中的 OpenGL 包 -lGLESv2 -lEGL -lGAL 是否等同于最新 qt creator 5.5.1 版本中的 -lGL

这意味着链接器找不到名为 libGL 的库。 你有 Mesa 的开发文件(头文件和库文件)吗?在哪里? 您可以使用 -L 选项指定其他库路径。 你能比较链接器调用命令吗?

关于第二部分:OpenGL ES 是 OpenGL 的子集,用于智能手机等嵌入式系统("compact" 版本的 OpenGL)。这意味着您将应用程序切换到了 "adult" 版本的 OpenGL。 Mesa 是 OpenGL 的 open-source 实现。这些库是 Mesa 的一部分。