【发布时间】:2015-10-11 20:07:08
【问题描述】:
在我的 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的文件。我已经检查了很多次拼写!
是否有任何原因导致链接器无法找到此文件,即使我已明确指定其确切位置并将其传递给链接器?
谢谢!
【问题讨论】:
-
不使用 Make 在命令行上尝试是否会发生同样的情况?