当前位置: 首页 > news >正文

解决Qt中 -lGL无法找到的问题

在使用Qt Creator创建并编译新项目时,可能会遇到以下错误:

/usr/bin/ld: cannot find -lGL
collect2: error: ld returned 1 exit status
make: *** [untitled1] Error 1
18:07:41: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project untitled1 (kit: Desktop Qt 5.1.0 GCC 32bit)
When executing step 'Make'

这个问题通常出现在新安装系统或者配置不完整时,原因是系统找不到OpenGL库。以下是几种解决方法。

方法一:安装必要的OpenGL开发库

在Ubuntu上,安装libgl1-mesa-dev包可以解决这个问题。这是推荐的解决方法:

sudo apt install libgl1-mesa-dev

方法二:手动创建符号链接

如果安装libgl1-mesa-dev包后问题仍然存在或者你希望避免安装额外的软件包,你可以手动创建符号链接:

  1. 首先使用 locate 命令找到libGL库的位置:

    locate libGL
    

    输出可能类似于:

    /usr/lib/i386-linux-gnu/mesa/libGL.so.1
    /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
    
  2. 然后创建一个指向该库的符号链接(假设库位于/usr/lib/x86_64-linux-gnu):

    sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/libGL.so
    

方法三:修改.pro文件

如果你的项目不需要GUI支持,可以在.pro文件中移除对GUI模块的依赖,这样链接器就不会再寻找lGL库:

QT -= gui

方法四(适用于RedHat系发行版):使用yum安装相关库

在RedHat系发行版如CentOS或Fedora上,可以使用yum来安装必要的OpenGL开发库:

yum provides */libGL.so
yum install mesa-libGL-devel mesa-libGLU-devel

方法五:重新安装相关库

在一些情况下,即使安装了必要的库也可能因为链接损坏等问题导致错误。可以尝试重新安装库:

sudo apt install --reinstall libgl1-mesa-glx

相关文章:

  • Java数据类型与运算符
  • 小游戏app看广告app开发案例
  • NodeJs实现对本地 mysql 数据库的增删改查
  • Flink 窗口函数
  • 网络编程5----初识http
  • 类AAAAAAAAAAAA迭代
  • SpringBoot使用Redisson实现可重入分布式锁
  • 如何正确理解和评估品牌价值?
  • C语言循环中获取之前变量的值
  • fataadmin导出Exel文件图片太大
  • 雷池社区版自动SSL
  • Go语言 获取服务器资源磁盘Disk情况
  • Vue3DraggableResizable知识点
  • 模型轻量化:数据瘦身的成功秘诀
  • Beyond VL了解学习
  • 【许晓笛】 EOS 智能合约案例解析(3)
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • CSS实用技巧干货
  • C学习-枚举(九)
  • IndexedDB
  • Java 多线程编程之:notify 和 wait 用法
  • js继承的实现方法
  • linux学习笔记
  • magento 货币换算
  • markdown编辑器简评
  • MySQL的数据类型
  • MySQL几个简单SQL的优化
  • PermissionScope Swift4 兼容问题
  • React+TypeScript入门
  • webgl (原生)基础入门指南【一】
  • webpack+react项目初体验——记录我的webpack环境配置
  • 高性能JavaScript阅读简记(三)
  • 快速体验 Sentinel 集群限流功能,只需简单几步
  • 如何在GitHub上创建个人博客
  • 设计模式 开闭原则
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 线上 python http server profile 实践
  • ​configparser --- 配置文件解析器​
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • ###项目技术发展史
  • #WEB前端(HTML属性)
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • #在 README.md 中生成项目目录结构
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • (1)(1.13) SiK无线电高级配置(五)
  • (10)STL算法之搜索(二) 二分查找
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (c语言)strcpy函数用法
  • (poj1.3.2)1791(构造法模拟)
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)ssm基于jsp的在线点餐系统 毕业设计 111016
  • (离散数学)逻辑连接词
  • (一)Thymeleaf用法——Thymeleaf简介