cvNamedWindow всегда segfaults - PullRequest
       9

cvNamedWindow всегда segfaults

0 голосов
/ 22 марта 2012

Каждый раз, когда я звоню cvNamedWindow, я получаю ошибку сегментации, и я не знаю, почему это происходит.Я пробовал компилировать примеры кода онлайн, а также писать свои собственные.Вот минимальный фрагмент кода, который воспроизводит проблему:

#include <opencv2/opencv.hpp>

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

cv::namedWindow("Video") тоже не работает.Почему это происходит?Я компилирую с OpenCV 2.3.1 под MinGW (компилятор C ++ v4.6.1) с Qt Creator.

Ответы [ 3 ]

1 голос
/ 04 апреля 2012

Я предполагаю, что проблема связана с другой веткой Я разместил.Короче говоря, моя другая проблема была связана с разницей между отладкой и выпуском DLL, о которой я не знал.

1 голос
/ 22 марта 2012

Я протестировал ваш код и не смог воспроизвести проблему на:

  • 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 . Вот руководство по установке it в Visual Studio 2010.

0 голосов
/ 19 июля 2017

Возможно, это не связано напрямую с причиной вашей проблемы, но для меня причина ошибки сегментации - многопоточность (параллельная обработка).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...