Eclipse 中的 C 代码 return 未定义对符号 cvSaveImage 的引用
C code in Eclipse return undefined reference to symbol cvSaveImage
我在 Ubuntu 15.10 上使用 Eclipse 和 OpenCV(版本 3)编写 C 程序,但我不明白为什么我总是收到错误
undefined reference to symbol 'cvSaveImage'
如果我运行
pkg-config opencv --cflags --libs
我明白了
-I/usr/local/include/opencv -I/usr/local/include -L/usr/local/lib
-lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres
-lopencv_videostab -lopencv_calib3d -lopencv_features2d
-lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video
-lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann
-lopencv_core -lopencv_hal
所以我将库添加到 GCC C Liker 中,如下图所示
如果我不尝试在程序 运行s 中使用函数 cvSaveImage,那么其他库可以正常工作。我包含了 highgui 库:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <opencv/cv.h>
#include <opencv/highgui.h>
#include <stdbool.h>
#include <time.h>
有什么想法吗?
cvSaveImage
属于 opencv_imgcodecs.
您在库 (-l) 中缺少 opencv_imgcodecs
。
我在 Ubuntu 15.10 上使用 Eclipse 和 OpenCV(版本 3)编写 C 程序,但我不明白为什么我总是收到错误
undefined reference to symbol 'cvSaveImage'
如果我运行
pkg-config opencv --cflags --libs
我明白了
-I/usr/local/include/opencv -I/usr/local/include -L/usr/local/lib
-lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres
-lopencv_videostab -lopencv_calib3d -lopencv_features2d
-lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video
-lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann
-lopencv_core -lopencv_hal
所以我将库添加到 GCC C Liker 中,如下图所示
如果我不尝试在程序 运行s 中使用函数 cvSaveImage,那么其他库可以正常工作。我包含了 highgui 库:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <opencv/cv.h>
#include <opencv/highgui.h>
#include <stdbool.h>
#include <time.h>
有什么想法吗?
cvSaveImage
属于 opencv_imgcodecs.
您在库 (-l) 中缺少 opencv_imgcodecs
。