【发布时间】:2014-08-14 03:12:50
【问题描述】:
我正在尝试在 Ubuntu 14.04 中编译 OpenCV sample,但出现这些错误
/tmp/cc2fXUtv.o: na função `main':
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:30: referência indefinida para `cv::VideoCapture::VideoCapture()'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:34: referência indefinida para `cv::CascadeClassifier::load(std::string const&)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:35: referência indefinida para `cv::CascadeClassifier::load(std::string const&)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:38: referência indefinida para `cv::VideoCapture::open(int)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:39: referência indefinida para `cv::VideoCapture::isOpened() const'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:53: referência indefinida para `cv::waitKey(int)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:41: referência indefinida para `cv::VideoCapture::read(cv::Mat&)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:56: referência indefinida para `cv::VideoCapture::~VideoCapture()'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:56: referência indefinida para `cv::VideoCapture::~VideoCapture()'
/tmp/cc2fXUtv.o: na função `detectAndDisplay(cv::Mat)':
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:67: referência indefinida para `cv::_OutputArray::_OutputArray(cv::Mat&)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:67: referência indefinida para `cv::_InputArray::_InputArray(cv::Mat const&)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:67: referência indefinida para `cv::cvtColor(cv::_InputArray const&, cv::_OutputArray const&, int, int)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:68: referência indefinida para `cv::_OutputArray::_OutputArray(cv::Mat&)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:68: referência indefinida para `cv::_InputArray::_InputArray(cv::Mat const&)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:68: referência indefinida para `cv::equalizeHist(cv::_InputArray const&, cv::_OutputArray const&)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:71: referência indefinida para `cv::CascadeClassifier::detectMultiScale(cv::Mat const&, std::vector<cv::Rect_<int>, std::allocator<cv::Rect_<int> > >&, double, int, int, cv::Size_<int>, cv::Size_<int>)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:79: referência indefinida para `cv::CascadeClassifier::detectMultiScale(cv::Mat const&, std::vector<cv::Rect_<int>, std::allocator<cv::Rect_<int> > >&, double, int, int, cv::Size_<int>, cv::Size_<int>)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:84: referência indefinida para `cv::ellipse(cv::Mat&, cv::Point_<int>, cv::Size_<int>, double, double, double, cv::Scalar_<double> const&, int, int, int)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:90: referência indefinida para `cv::circle(cv::Mat&, cv::Point_<int>, int, cv::Scalar_<double> const&, int, int, int)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:96: referência indefinida para `cv::_InputArray::_InputArray(cv::Mat const&)'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:96: referência indefinida para `cv::imshow(std::string const&, cv::_InputArray const&)'
/tmp/cc2fXUtv.o: na função `__static_initialization_and_destruction_0':
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:22: referência indefinida para `cv::CascadeClassifier::CascadeClassifier()'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:22: referência indefinida para `cv::CascadeClassifier::~CascadeClassifier()'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:23: referência indefinida para `cv::CascadeClassifier::CascadeClassifier()'
/home/guilherme/Área de Trabalho/vis-o-computacional/haar like cascata/objectDetection2.cpp:23: referência indefinida para `cv::CascadeClassifier::~CascadeClassifier()'
/tmp/cc2fXUtv.o: na função `cv::Mat::Mat(cv::Mat const&)':
/usr/include/opencv2/core/mat.hpp:125: referência indefinida para `cv::Mat::copySize(cv::Mat const&)'
/tmp/cc2fXUtv.o: na função `cv::Mat::~Mat()':
/usr/include/opencv2/core/mat.hpp:278: referência indefinida para `cv::fastFree(void*)'
/tmp/cc2fXUtv.o: na função `cv::Mat::release()':
/usr/include/opencv2/core/mat.hpp:367: referência indefinida para `cv::Mat::deallocate()'
/tmp/cc2fXUtv.o: na função `cv::Mat::operator()(cv::Rect_<int> const&) const':
/usr/include/opencv2/core/mat.hpp:379: referência indefinida para `cv::Mat::Mat(cv::Mat const&, cv::Rect_<int> const&)'
collect2: error: ld returned 1 exit status
make: ** [objectDetection2] Erro 1
这是我的makefile的出口
g++ -Wall -g -lm -DDEBUG -I/usr/include/opencv2 -L/usr/lib `pkg-config opencv --cflags --libs` -o objectDetection2 objectDetection2.cpp
我正在使用this 教程安装 OpenCV,我可以在终端中使用 OpenCV 命令,但无法编译示例。 我解决了什么?
PS:出口是葡萄牙语错误“referência indefinida para”等于“未定义的引用”
【问题讨论】:
标签: c++ opencv compiler-errors