gpt4 book ai didi

c++ - 编译样例opencv kalman滤波程序时出现链接错误

转载 作者:行者123 更新时间:2023-11-28 04:19:02 24 4
gpt4 key购买 nike

我目前正在尝试构建和运行在 https://docs.opencv.org/trunk/de/d70/samples_2cpp_2kalman_8cpp-example.html#a12 上找到的卡尔曼滤波器示例程序

当我尝试编译程序时,我得到以下输出:

g++ -o  kalman kalman.o -lopencv_core -lopencv_tracking -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs -lopencv_videoio -lopencv_objdetect
/usr/bin/ld: kalman.o: undefined reference to symbol '_ZN2cv12KalmanFilter7predictERKNS_3MatE'
/usr/bin/ld: /usr/lib/libopencv_video.so.4.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make: *** [Makefile:9: kalman] Error 1

我的 Makefile 中似乎缺少一个链接库,但我在网上到处找,似乎找不到。

我已经尝试在我的 Makefile 的 LIBS 变量中切换链接库的顺序。我首先尝试将 -lopencv_tracking(我假设卡尔曼滤波器函数所在的位置)放在链接列表的末尾,然后我尝试将它放在列表的第二位(就在 -lopencv_core 的前面)。两者都产生了相同的链接错误。

这是我正在使用的 Makefile

CC=g++
TARGET=kalman
SRC=kalman.cpp
LIBS=-lopencv_core -lopencv_tracking -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs -lopencv_videoio -lopencv_objdetect
OBJ=kalman.o
%.o: %.cpp
$(CC) -c -o $@ $< $(LIBS)
kalman: $(OBJ)
$(CC) -o $@ $^ $(LIBS)

程序应该正确构建,没有错误

最佳答案

我找到了答案,我的 LIBS 中缺少 -lopencv_video

关于c++ - 编译样例opencv kalman滤波程序时出现链接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55883608/

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