初学OpenGL,在看learnopengl 看到配置glfw时,glfw链接错误
DSO missing from command line 代码如下
//test.cpp
#include <GL/gl.h>
#include <GL/glu.h>
#include <GLFW/glfw3.h>
#include <stdio.h>
int main(void)
{
glfwInit();
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
printf("works");
return 0;
}
按照教程上的编译命令
$ gcc test.cpp -lglfw3 -lGL -lX11 -lpthread -lXrandr -lXi
/usr/bin/ld: //usr/local/lib/libglfw3.a(vulkan.c.o): undefined reference to symbol 'dlclose@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libdl.so.2: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
OS: ubuntu16.04
glfw头文件及库均可搜索到
问题:
如何链接才能顺利编译链接?
翻了好多网站,在SO找到了可以用的解决方案,链接
具体是哪里出错了还没搞懂,知道的朋友可以回答一下