【问题标题】:eclipse opencv 3.1.0 library compiler issues on WindowsWindows上的eclipse opencv 3.1.0库编译器问题
【发布时间】:2017-11-07 11:30:03
【问题描述】:

对于大学,我需要在 eclipse 中使用 Opencv (version 3.1.0) 制作一些 c++ 项目。 我已经链接了opencv的include和库,就像教程中建议的那样,eclipse确实正确地突出了变量。

但是一旦我尝试编译项目,我就会收到以下错误:

g++ -L"C:\opencv\build\x64\vc14\lib" -o "DisplayImage2" ./src/DisplayImage.o -lopencv_world310 -lopencv_world310d

C:\Users\eclipse-cc-workspace\DisplayImage2\Debug/../src/DisplayImage.cpp:11: 对 `cv::imread(cv::String const&, int)' 的未定义引用

C:/opencv/build/include/opencv2/core/cvstd.hpp:625: 未定义 引用`cv::String::allocate(unsigned long long)'

opencv 中定义的任何运算符都相同,而不仅仅是 imread

从我到目前为止收集到的信息来看,如果库-lopencv_imgcodecs 和类似的库未在其他版本的 Opencv 中链接,则会发生这些错误。 但是在 310 windows 版本上没有这些库。唯一一个我已经链接的opencv_world310opencv_world310d。 所以我不知道为什么gnu编译器找不到声明。

我尝试了其他版本的 opencv,但所有 310 以上(我需要)都只有 opencv_world 作为它们的组合库。

任何帮助将不胜感激。

【问题讨论】:

  • 不确定这是否能解决问题,但肯定是错误的:您正在链接调试和发布库,您应该将带有d 的一个链接到调试版本,另一个链接到发布版本。
  • 我只用 opencv_world310 试过了,但也没有用:(

标签: c++ windows eclipse opencv compiler-errors


【解决方案1】:

我和你有同样的问题,我搜索并尝试了很多,最后得出了结论。好像g++不能和opencv_world310一起工作,但是MSVC cl.exe可以直接链接opencv_world310,效果很好。如果你想使用 g++,你应该先使用 cmake 和 opencv 源文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-05
    • 2016-09-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多