解决Linux环境Qt报“cannot find -lgl“问题

    今天,在Ubuntu 18.04.6环境下,安装Qt5.14.2之后,运行一个QWidget工程,发现Qt报"cannot find -lgl"错误。

    出现这种现象的原因:Qt的Path路径没有配置,缺少libqt4-dev依赖包和一些必要的组件

    解决方法如下:

1 配置Qt的Path路径

  • a) 使用管理员权限打开/etc/profile文件,
bash 复制代码
sudo vim /etc/profile
  • b) 在/etc/profile文件末尾添加如下2条语句:
perl 复制代码
export PATH="/home/onelinux/Qt5.14.2/Tools/QtCreator/bin:$PATH"
export PATH="/home/onelinux/Qt5.14.2/5.14.2/gcc_64/bin:$PATH"

注意 ,这个Path包括2条路径:Tools路径、gcc路径。

    首先,是Qt的安装路径:/home/onelinux/Qt5.14.2,

    Tools路径: /home/onelinux/Qt5.14.2/Tools/QtCreator/bin;

    gcc路径:/home/onelinux/Qt5.14.2/5.14.2/gcc_64/bin;

   请按照自己电脑上实际的Qt路径,进行相应的修改

图(1) 在/etc/profile里,添加Qt的Path路径

  • c) 使能该Path环境
bash 复制代码
source /etc/profile

2 安装gcc和g++

bash 复制代码
sudo apt-get install gcc g++

3 安装libqt4-dev依赖包

bash 复制代码
sudo apt-get install libqt4-dev

4 安装必要的组件

bash 复制代码
sudo apt-get install build-essential 

    重新编译Qt工程,发现该问题已经修复。

相关推荐
Quz7 小时前
QML Repeater 数据模型:ListModel 与 C++ QAbstractListModel
qt
Quz7 小时前
QML Repeater 基础用法:整数、JS 数组、字符串数组三种模型
qt
码农客栈7 小时前
linux 交叉编译tslib
linux
螺蛳粉 螺蛳粉7 小时前
MySQL 分布式集群系列 · 第五篇——全方位对比:NDB、MGR、主从复制、分库分表怎么选?
数据库·分布式·mysql
鱼月半7 小时前
两台电脑直连网络不通怎么办?
linux·网络协议
光电笑映8 小时前
网络通信基础:从协议分层到 Socket 编程预备
linux·运维·服务器·网络
酸菜。8 小时前
dw_apb_gpio总结
linux
wunaiqiezixin9 小时前
MIT 6.S081 file system 实验篇(lab9):Large files (moderate)
linux·unix·os·xv6·mit6.s081
GeW9 小时前
RHCE 考试通过率提升:核心考点、实验环境与排错技巧
linux
吴声子夜歌9 小时前
Shell编程实例——与解析相关的任务(二)
linux·运维·shell