Qt Creator 6.8(Fedora 40)中禁用或配置OpenGL的方法咨询
Fedora 40下Qt Creator 6.8链接OpenGL报错的解决方法
问题回顾
构建简单Widget项目时出现链接错误:
Cannot find -lGL. No such file or directory
查看发现/usr/include下无GL.h头文件,仅/usr/lib有相关.so文件,以下针对你提出的两个问题给出解决方案:
一、能否完全禁用OpenGL?
可以。你的项目是纯Widget(仅用按钮),本不需要依赖OpenGL,报错大概率是.pro文件存在无效配置导致Qt误引入OpenGL依赖。先修正.pro文件的两个错误:
TARGET字段不要带.pro后缀,应改为MusicApp- 删除无效的
MAKEFILE行
修正后的.pro文件:
TEMPLATE = app TARGET = MusicApp QT = core gui greaterThan(QT_MAJOR_VERSION, 6): QT += widgets SOURCES += \ main.cpp
如果仍有OpenGL依赖问题,可在.pro末尾添加配置强制使用xcb平台(不依赖OpenGL):
QMAKE_LFLAGS += -lxcb
或在Qt Creator的运行配置中添加环境变量:QT_QPA_PLATFORM=xcb
二、解决OpenGL头文件与链接问题
你/usr/lib中的.so是运行时库,编译链接需要的头文件和链接库在开发包中,Fedora 40上安装对应开发包即可:
打开终端执行:
sudo dnf install mesa-libGL-devel
安装完成后,开发包会将GL.h等头文件放到/usr/include/GL目录,同时提供链接所需的库文件,重新构建项目即可解决报错。
内容的提问来源于stack exchange,提问作者Kyrylo Lyskov
相关产品推荐
相关产品推荐

