opencv中使用devc ++的未定义引用

时间:2016-05-27 01:46:19

标签: c++ opencv computer-vision dev-c++

我试图在我的Windows系统上使用devc ++安装opencv。我安装了opencv,然后在devc ++中添加了一个新的编译器。

我在调用新编译器部分时添加了以下命令

gridTL = [gridList[0][0], gridList[0][1], gridList[1][0], gridList[1][1]]
gridTR = [gridList[0][1], gridList[0][2], gridList[1][1], gridList[1][2]]
gridBL = [gridList[1][0], gridList[1][1], gridList[2][0], gridList[2][1]]
gridBR = [gridList[1][1], gridList[1][2], gridList[2][1], gridList[2][2]]

我添加了链接器命令行的以下命令

-L"C:\OpenCV\lib" -lcxcore210 -lcv210 -lcvaux210 -lhighgui210 -lml210

我添加了相应的opencv二进制文件,库和包含,并将opencv / bin添加到环境变量中。

然而,当我尝试运行以下opencv代码时,

-lcxcore210 -lcv210 -lcvaux210 -lhighgui210 -lml210

它出现以下错误。

  

[链接错误]   C:\用户\用户名\应用程序数据\本地的\ Temp \ ccGQvgqG.o:filename.cpp :(文字$ _ZN2cv3Mat7releaseEv [简历::垫::释放()] + 0x3F的):   未定义引用`cv :: fastFree(void *)'

1 个答案:

答案 0 :(得分:0)

不要使用OpenCV 2.1.0

使用OpenCV 2.4.133+

您可以阅读documentation

  

预建库[...]仅在使用最新的Microsoft Visual Studio IDE进行编码时才有效。

如果要使用除Visual C ++之外的其他编译器,则必须自己构建OpenCV库。这是一个好的开始tutorial。请注意,因为它们“长期过时并且包含不准确的信息”。