首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CMake找不到OpenGL (丢失: OPENGL_glx_LIBRARY)

CMake找不到OpenGL (丢失: OPENGL_glx_LIBRARY)
EN

Ask Ubuntu用户
提问于 2020-12-31 10:45:48
回答 1查看 3.8K关注 0票数 7

我正在尝试安装从sourceforge下载的freeglut-3.0.0源代码。

当我键入cmake .时,它将显示错误Could not find OpenGL (missing: OPENGL_glx_LIBRARY)

由于在堆栈溢出、askubuntu和github上有许多问题和答案。我试着从这些问题(这里这里这里这里这里这里等)中提出建议.当我按照建议安装任何软件包时,我总是会得到package_name is already the newest version,但问题依然存在。

在很多建议和答案中提到,这些库已经由Nvidia驱动程序安装,这些库似乎安装在我的PC上,但是Cmake找不到它。

我的个人电脑配置是

  • Ubuntu 18.04
  • 英伟达司机440.100

也许是我的问题,这个问题似乎重复了许多问题,但我无法找到任何解决我的问题。

寻找一些好的建议。

EN

回答 1

Ask Ubuntu用户

发布于 2023-04-11 23:34:00

实际上,您可以在一定程度上感谢ChatGPT,因为我也遇到了困难。

  1. 验证您是否获得了所需的.so文件,并找到它们的路径
代码语言:javascript
运行
复制
find /usr -name 'libGL.so'
# in my case, on a raspberry pi I get
# /usr/lib/aarch64-linux-gnu/libGL.so
  1. 我相信您可以修改CMakeLists.txt或更改cmake的命令行参数。 如果编辑cmake,在top.注释附近添加这两行:这里的var名称与错误消息略有不同(但它仍然解决了问题,至少对我来说是这样)
代码语言:javascript
运行
复制
set(OPENGL_gl_LIBRARY /usr/lib/x86_64-linux-gnu/libGL.so)
set(OPENGL_glx_LIBRARY /usr/lib/x86_64-linux-gnu/libGLX.so)
  1. 如果cmake命令仍然不起作用,那么如果您使用的是check.,那么可以尝试使用以下正确的ssh,首先使用
代码语言:javascript
运行
复制
ssh -X blah_address 
# so that displays are enabled

那么(不管你是否在使用ssh )

代码语言:javascript
运行
复制
DISPLAY=:0
glxinfo | grep OpenGL

输出应该类似于:

代码语言:javascript
运行
复制
OpenGL vendor string: Broadcom
OpenGL renderer string: VC4 V3D 2.1
OpenGL version string: 2.1 Mesa 22.2.5
OpenGL shading language version string: 1.20
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 22.2.5
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16 

如果没有,这就意味着OpenGL本身可能有问题,并且是一个单独的问题,需要追踪。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1304074

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档