gpt4 book ai didi

linux - 链接器找不到具有显式路径的库文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:14:00 24 4
gpt4 key购买 nike

在我的 makefile 中,我指定了一个库依赖项,如下所示:

LDFLAGS := -l/home/karnivaurus/OpenCV-3.0.0/build/lib/libopencv_core.so

all: $(DYNAMIC_NAME)

$(DYNAMIC_NAME): $(OBJS) | $(LIB_BUILD_DIR)
@ echo LD -o $@
$(Q)$(CXX) -shared -o $@ $(OBJS) $(LINKFLAGS) $(LDFLAGS) $(DYNAMIC_FLAGS)

现在,如果我运行 make all,我会收到以下错误:

/usr/bin/ld: cannot find -l/home/karnivaurus/Libraries/OpenCV-3.0.0-RC1/build/lib/libopencv_core.so

但是,在目录/home/karnivaurus/Libraries/OpenCV-3.0.0-RC1/build/lib中,肯定有一个名为libopencv_core.so的文件.我已经检查过很多次拼写了!

即使我已明确指定其确切位置并将其传递给链接器,链接器找不到此文件的原因有哪些?

谢谢!

最佳答案

使用-L作为库路径和-lopencv_core:

LDFLAGS := -L /home/karnivaurus/OpenCV-3.0.0/build/lib/ -lopencv_core

或者只包含 .so 文件的完整路径而不用 -l

LDFLAGS := /home/karnivaurus/OpenCV-3.0.0/build/lib/libopencv_core.so

关于linux - 链接器找不到具有显式路径的库文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33069583/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com