CMake在Ubuntu中找不到OpenGL



我想在Ubuntu中安装VTK。CMake向我发送此错误:

CMake错误/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108(消息):找不到OpenGL(缺少:OpenGL_gl_LIBRARYOPENGL_INCLUDE_DIR)调用堆栈(最近的调用优先):
/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:315(_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-2.8/Modules/FindOpenGL.cmake:161(FIND_PACKAGE_HANDLE_STANDARD_ARGS)
Rendering/ONGL/CMakeLists.txt:196(find_package)

CMake错误:此项目中使用了以下变量,但是它们被设置为NOTFOUND。请设置或确保已设置并在CMake文件中正确测试:OPENGL_INCLUDE_DIR(ADVANCED)用作目录中的include目录/home/pilou/Documents/src/VTK-6.2.0/Geovis/Core

因此,我安装了freeglut3并构建了essential(正如我在互联网上看到的)。但一切都没有改变。

我怎么能找到opengl来编写我自己的CMake链接呢?我还能做些什么来安装VTK?

EDIT根据答案,我们不需要安装freeglut(适用于windows的SDK),但安装mesa就足够了

你可以安装一个OpenGL的实现。请参阅答案中的指示。

因此,如果您有这样的错误:

找不到OpenGL

然后,您要安装libgl1-mesa-dev。使用基于debian的系统:

sudo apt-get install libgl1-mesa-dev

对于错误,例如:

找不到OpenGL(缺少:EGL)

然后,您要安装libegl1-mesa-dev。使用基于debian的系统:

sudo apt-get install libegl1-mesa-dev

您不需要任何版本的GLUT来满足对OpenGL的依赖。您需要的是OpenGL标头和库。在Ubuntu中,它们与libgl1-mesa-dev软件包一起安装。

要获得EGL构建依赖项,请将包名称的gl1部分替换为egl1

我也遇到过同样的问题,但上面提出的解决方案都没有帮助我。在我的案例中,我发现libGL.so没有软链接,所以我只是转到/usr/lib/x86_64-linux-gnu,然后手动设置软链接ln -s libGL.so.1 libGL.so。顺便说一句,我在Docker容器上工作时遇到了这个问题。

遵循本教程以确保驱动程序已安装并可供访问:

最新更新