所以基本上我正在编译使用GLFW的程序
现在我使用此命令
成功编译它gcc -o myprog glfw.c `pkg-config --static --libs glfw3`
然而我想知道的是我如何只使用-l选项
来编译它我尝试了许多网站提供的描述,每次都有链接器DSO错误,我不知道如何解决它
这是我尝试的最新版本
pkg-config --print-requires --print-requires-private glfw3
x11
xrandr
xinerama
xi
xxf86vm
xcursor
gl
尝试使用这些链接选项后
gcc -o myprog glfw.c -lglfw3 -lX11 -lXrandr -lXinerama -lXi -lXxf86vm -lXcursor -lGL
/usr/bin/ld: //usr/local/lib/libglfw3.a(glx_context.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
这就是我得到的错误,我不知道如何解决它
答案 0 :(得分:5)
没关系,我让它使用这些链接器选项
gcc glfw.c -lglfw3 -lGL -lm -ldl -lXinerama -lXrandr -lXi -lXcursor -lX11 -lXxf86vm -lpthread