cvNamedWindow总是段错误

时间:2012-03-22 13:21:56

标签: c++ c opencv mingw

任何时候我打电话给cvNamedWindow我都会遇到分段错误,我不知道为什么会这样。我已经尝试编译在线代码示例以及编写自己的代码示例。这是重现问题的最小代码:

#include <opencv2/opencv.hpp>

int main() {
    cvNamedWindow("Video");
    return 0;
}

cv::namedWindow("Video")也不起作用。为什么会这样?我正在使用Qt Creator在MinGW(C ++编译器v4.6.1)下编译OpenCV 2.3.1。

3 个答案:

答案 0 :(得分:1)

我测试了您的代码,无法重现问题:

  • Linux GCC 4.5.1 20100924(Red Hat 4.5.1-4)
  • Windows XP VS2010

但是,最好调用cvDestroyWindow()来释放创建窗口时分配的资源:

#include <opencv2/opencv.hpp>

int main() 
{
    cvNamedWindow("Video");

    cvDestroyWindow("Video");

    return 0;
}

在Windows上,我使用了OpenCV-2.3.0-win-superpack.exe。这是Visual Studio 2010上的guide for installing

答案 1 :(得分:1)

我假设问题与我发布的another thread有关。长话短说,我的另一个问题与我不知道的调试和发布DLL之间的区别有关。

答案 2 :(得分:0)

可能与您的问题的原因没有直接关系,但对我来说,分段错误的原因是由于多线程(并行处理)。