在OpenCV中链接库

时间:2013-02-03 00:40:25

标签: c opencv

我一直在努力为绝对年龄编译这个简单的代码,但没有运气。

#include "highgui.h"
#include "opencv2/highgui/highgui_c.h"
int main()
{    
   int cvNamedWindow(const char* name,int flags = CV_WINDOW_AUTOSIZE);
   {
        cvNamedWindow("sample");
   }

   cvDestroyWindow("sample");    
}

我使用的是Ubuntu 12.04平台。起初我得错误说

  

没找到highgui.h。

我现在已经纠正了这一点,但现在我得到了新的。我正在使用的编译指令是:

gcc -o window window.c -I/usr/include/opencv/

新错误是:

window.c:8:48: error: expected ‘;’, ‘,’ or ‘)’ before ‘=’ token
window.c:10:6: error: too few arguments to function ‘cvNamedWindow’

现在我甚至不确定问题是什么了。对OpenCV中的编译似乎没有任何明确的解释。请有人帮助我真的需要继续这个,不能花一整天试图编译!感谢

2 个答案:

答案 0 :(得分:0)

尝试编译:

#include "highgui.h"
#include "opencv2/highgui/highgui_c.h"
int main() {    
   cvNamedWindow("sample");


   cvDestroyWindow("sample");
   return 0;   
}

答案 1 :(得分:0)

C 中有没有默认参数。

您应该按如下方式致电cvNamedWindow()

cvNamedWindow("sample", CV_WINDOW_AUTOSIZE);

完整代码:

#include "highgui.h"
#include "opencv2/highgui/highgui_c.h"

int main() {    
   cvNamedWindow("sample",CV_WINDOW_AUTOSIZE);
   cvDestroyWindow("sample");
   return 0;
}