Qt Linux下调用OpenGL的glu.h报错:error: GL/glu.h: No such file or directory

引言

在Windows上正常运行的OpenGL程序,到Linux下突然报错…找不到glu.h。解决过程略曲折,特此记录问题以及解决方案,顺便留下解决过程方便复盘…

一、问题描述

在Linux下编译OpenGL程序,报错:error: GL/glu.h: No such file or directory

  • 在系统中使用find命令查找,确实没有… 很奇怪,标准的库为啥不被这个Linux自带呢。发现 /usr/include/GL下只有下图部分头文件(有gl.h没有glu.h):
    在这里插入图片描述

二、解决方案

确定是缺少glu.h,安装相应的库即可。
可以在Linux直接运行apt-get install libglu-mesa-devyum install libglu-mesa-dev

可参考此博客 error: GL/glu.h: 没有那个文件或目录:https://blog.csdn.net/qq_41260086/article/details/117848991

由于我的Linux无法上网,没有使用yum等方便的命令进行安装:

    1. 找提供上述库的网址,比如阿里的开源镜像站:

相关网址推荐:
http://rpmfind.net/linux/rpm2html/search.php?query=mesa-libGLU-devel(x86-64)
https://pkgs.org/download/libGLU.so.1()(64bit)
https://developer.aliyun.com/packageSearch 阿里的开源镜像站,和上述网址一样,搜索即可

    1. 使用uname -a确定Linux版本,搜索下载对应的库。我的是el7.x86_64 使用rpm管理包,故下载*.el7.x86_64.rpm的包
      在这里插入图片描述
    1. 下载了mesa-libGLU-9.0.0-4.el7.x86_64.rpm mesa-libGLU-devel-9.0.0-4.el7.x86_64.rpm ,依次安装即可。如没有权限,在命令前加sudo
rpm -Uvh mesa-libGLU-9.0.0-4.el7.x86_64.rpm 
rpm -Uvh mesa-libGLU-devel-9.0.0-4.el7.x86_64.rpm

三、解决过程记录

3.1 定位问题

如上述的问题描述,先确定是缺少glu.h… 查看OpenGL版本:2.1,此版本是存在glu.h的

glxinfo | grep "OpenGL version"

在这里插入图片描述

还找到了一个一个20年前到现在还没有解决的帖子:
linux+opengl 下載源碼編譯是提示找不到gl/glu.h 怎麼解決? https://bbs.csdn.net/topics/90046361

3.2 尝试使用yum命令安装

  • 注意:要安装dev版本 (包含与库接口相关的头文件),奈何情况特殊,无法联网
sudo yum install libglu-mesa-dev

3.3 从网上下载到本地进行安装

  • 搜寻了各大网址,详情看之前的相关网址推荐… 安装以后显示错误依赖
  • 故查询自己的Linux版本,下载对应的库文件mesa-libGLU-devel-9.0.0-4.el7.x86_64.rpm
  • 执行安装:sudo rpm -Uvh mesa-libGLU-devel-9.0.0-4.el7.x86_64.rpm ,还报依赖错误
    在这里插入图片描述
  • 提示没有libGLU.so.1,又下载mesa-libGLU-9.0.0-4.el7.x86_64.rpm
  • 执行安装:sudo rpm -Uvh mesa-libGLU-9.0.0-4.el7.x86_64.rpm ,成功安装
  • 继续安装:sudo rpm -Uvh mesa-libGLU-devel-9.0.0-4.el7.x86_64.rpm ,成功。
  • 程序正常运行...
  • 27
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大米粥哥哥

感谢认可!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值