您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

glfw3错误:命令行缺少DSO

glfw3错误:命令行缺少DSO

看起来缺少的符号来自libdl

作为额外的奖励,我将给您一个Makefile。请记住要使用制表符缩进,不能缩进,否则Makefile将不起作用。

all: out
clean:
        rm -f out *.o
.PHONY: all clean

CXX = g++
CPPFLAGS =
CXXFLAGS = -std=c++11 -Wall -Wextra -g
LIBS = -lGL -lGLU -lglfw3 -lX11 -lXxf86vm -lXrandr -pthread -lXi -ldl
LDFLAGS =

out: main.o
        $(CXX) $(LDFLAGS) -o $@ $^ $(LIBS)

但是,如果使用,会容易得多pkg-config。我不知道正确的命令是什么(我现在不在Linux上,所以我无法检查),但是它看起来像这样:

packages = glfw3
CPPFLAGS := $(shell pkg-config --cflags $(packages))
LIBS := $(shell pkg-config --libs $(packages))

这样,您甚至不必知道自己需要-ldl,因为pkg-config它将为您解决。这是标准的处理方式。

尝试pkg-config --libs glfw3自己运行以查看输出。如果尚未安装,请运行sudo apt-get install pkg- config

其他 2022/1/1 18:16:09 有356人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶