【问题标题】:Unable to compile C++ OpenCV2.4.9, Win7x64, Eclipse Mars, MinGW无法编译 C++ OpenCV2.4.9、Win7x64、Eclipse Mars、MinGW
【发布时间】:2015-09-17 20:37:22
【问题描述】:

对 OpenCV 不太熟悉,我在 Java OpenCV 中做了一些东西,但是受限于这个库,我已经很难进入 C/C++!

我已经成功构建并运行了 C OpenCV 项目,但是看到大多数教程在 C++ 版本上运行,我正在尝试制作一个简单的“HelloCV”:

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/opencv.hpp>
#include <iostream>

using namespace std;
using namespace cv;

int main()
{

Mat img = imread("c:/lenna.png", CV_LOAD_IMAGE_COLOR);

namedWindow("MyWindow", CV_WINDOW_AUTOSIZE);
imshow("MyWindow", img);

waitKey(0);
return 0;
}

我总是收到以下错误:

../src/mainCPP.cpp:12: undefined reference to `cv::imread(std::string const&, int)'
../src/mainCPP.cpp:14: undefined reference to `cv::namedWindow(std::string const&, int)'
../src/mainCPP.cpp:15: undefined reference to `cv::_InputArray::_InputArray(cv::Mat const&)'
../src/mainCPP.cpp:15: undefined reference to `cv::imshow(std::string const&, cv::_InputArray const&)'
../src/mainCPP.cpp:17: undefined reference to `cv::waitKey(int)'
src\maincpp.o: In function `ZN2cv3MatD1Ev':
C:/OpenCV_2.4.9/opencv/build/include/opencv2/core/mat.hpp:278: undefined reference to `cv::fastFree(void*)'
src\maincpp.o: In function `ZN2cv3Mat7releaseEv':
C:/OpenCV_2.4.9/opencv/build/include/opencv2/core/mat.hpp:367: undefined reference to `cv::Mat::deallocate()'
collect2.exe: error: ld returned 1 exit status

我已经完成了大约 4-5 次安装教程,但我只成功地让我的项目崩溃了!

我的“工作”设置:

  • C/C++ 构建 -> GCC C++ 编译器 -> 包含 -> 包含路径 (-I):我的包含文件夹的路径(“C:\OpenCV_2.4.9\opencv\build\include”)
  • C/C++ 构建 -> GCC C++ 链接器 -> 库 -> 库搜索路径 (-L) -> "C:\OpenCV_2.4.9\opencv\build\x86\vc11\lib", 我知道我已经把路径放到 x86 而不是 x64 由于 lib 错误,例如:“不兼容的系统架构”......!
  • C/C++ Build -> GCC C++ Linker -> Libraries -> Libraries (-l):opencv_core249、opencv_imgproc249 和 highgui249(我测试过包括所有库,但它是相同的)

我已经添加了环境变量:C:\OpenCV_2.4.9\opencv\build\x86\vc11\bin(不是只有M$ Visual Studio吗?!)

【问题讨论】:

  • 我正在探索以下方式:我正在使用 ../build/x86/vc11/bin 或 vc10 或 vc11,它们都是用于 Visual C++ 编译器的...... OpenCV 已经停止为 minGW 构建二进制文件,所以我必须编译它们......

标签: c++ eclipse opencv


【解决方案1】:

似乎 openCV 没有正确安装。尝试使用 Chocolatey,它可以在 windows 上干净地安装最新版本的 OpenCV。

【讨论】:

    猜你喜欢
    • 2018-07-03
    • 1970-01-01
    • 1970-01-01
    • 2015-09-11
    • 2014-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-01
    相关资源
    最近更新 更多