C++ 我得到了一个“答案”;找不到-lOpenGL::OpenGL“;生成安装部分时出错

C++ 我得到了一个“答案”;找不到-lOpenGL::OpenGL“;生成安装部分时出错,c++,opengl,graphics,C++,Opengl,Graphics,当我安装partio时,它会显示以下错误消息 /usr/bin/ld: cannot find -lOpenGL::OpenGL collect2: error: ld returned 1 exit status src/tools/CMakeFiles/partview.dir/build.make:91: recipe for target 'src/tools/partview' failed make[2]: *** [src/tools/partview] Error 1 CMake

当我安装partio时,它会显示以下错误消息

/usr/bin/ld: cannot find -lOpenGL::OpenGL
collect2: error: ld returned 1 exit status
src/tools/CMakeFiles/partview.dir/build.make:91: recipe for target 'src/tools/partview' failed
make[2]: *** [src/tools/partview] Error 1
CMakeFiles/Makefile2:967: recipe for target 'src/tools/CMakeFiles/partview.dir/all' failed
make[1]: *** [src/tools/CMakeFiles/partview.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
当我在互联网上搜索时,我几乎看不到任何关于-lOpenGL::OpenGL的信息。我看过OpenGL::GLU或GL。但是我还没有看到OpenGL::OpenGL。所以我不知道如何解决这个问题

我使用的cmake版本正好是3.15.0。
有什么解决办法吗?任何东西都会有帮助。

欢迎使用堆栈溢出

您正在查找的库名为
libGL.so
,而不是
libOpenGL.so
或类似的库。要链接它,请将
-lGL
添加到命令行,并删除对命令行上的
OpenGL::OpenGL
的引用。(如果您仍然有问题,请向我们展示您的整个构建命令行。)


<> Po>,OpenGL是一个基于C的库,所以C++的构造如<代码> OpenGL::OpenGL(大概是类的构造函数)将不会在其中找到。或者,这可能是对CMake的引用,在这种情况下,我的答案需要进行重大更改。

该目标由提供。请参阅本页底部的注释。你能检查每个变量的内容吗?您的系统使用什么OpenGL实现?OpenGL::OpenGL是一个有效的Cmake目标;它与C++无关。看我的评论。@Botje:对(因此我的回答是最后一句话)。OP中没有显示CMake是否正在使用。错误输出中的
CMakeFiles
为我提供了它,但很容易错过。