C ++ tbb_debug.dll отсутствует

Я новичок в openCV, и я попытался выполнить несколько руководств. Все работало нормально, пока я не включил: opencv2 / imgproc / imgproc.hpp и не использовал функцию filter2D. При запуске программы возникла следующая ошибка:

«Программа не может запуститься, потому что на вашем компьютере отсутствует tbb_debug.dll».

В Интернете я обнаружил, что эта ошибка как-то связана с 32- и 64-битными версиями dll.

Я использую 64-битную версию Windows и создал 32-битное консольное приложение в VS2010, и приложение использует 32-битную версию DLL openCV. Когда я запускаю программу «dependency walker», я вижу, что моя программа использует 64-битную версию всех системных dll (в C: \ windows \ system32 ....). Только DLL opencv 32-битные.

снимок экрана depenency walker:

введите описание изображения здесьСпасибо


person programmer004    schedule 03.09.2011    source источник
comment
Вы должны использовать 32-битную версию dependency walker для анализа 32-битных программ (у вас могут быть установлены обе версии dependency walker).   -  person Ben Voigt    schedule 08.01.2012


Ответы (3)


Я предполагаю, что вы используете предварительно скомпилированные двоичные файлы OpenCV 2.3. Пакет по какой-то причине поставляется с tbb dll, но не с отладочными (например, с tbb.dll, но не с tbb_debug.dll). Вам необходимо получить это от Intel здесь или как часть программного обеспечения Intel suite (если вы хотите купить / попробовать). Как только вы получите это, все, что вам нужно сделать, это поместить библиотеки DLL в путь, где исполняемый файл вашей программы может их найти. Самый простой способ - скопировать весь tbb * _debug.dll в папку bin OpenCV .... / build / common / tbb / intel64 / vc10 /

ОБНОВЛЕНИЕ [май '12]: OpenCV 2.4 уже вышел, и он поставляется со всеми необходимыми dll!

person KMS    schedule 05.09.2011
comment
Я использую только 2.4.0 ... У меня была такая же проблема - person Vinoj John Hosan; 31.05.2014

Для всех вас, кто хочет попробовать простейшее решение (это единственное решение, которое сработало для меня):

  1. щелкните правой кнопкой мыши свой проект в Visual Studio
  2. выберите "Свойства"
  3. в параметрах библиотек производительности Intel
  4. выберите «ДА» для «Использовать TBB»

Как поясняется в этом видео, начиная с 2:55

Народ удачи! :)

==== РЕДАКТИРОВАТЬ - обновил ссылку на видео (первый и последний раз)

person Aleksandar    schedule 20.04.2016
comment
Подскажите пожалуйста ссылку на видео, она битая? - person David Baghdasaryan; 27.10.2018
comment
@DavidBaghdasaryan видео размещено в качестве дополнительной информации. Поскольку процедура довольно проста, я не буду обновлять ссылку снова. - person Aleksandar; 02.11.2018

Если вам нужна библиотека Intel TBB, вы можете получить ее из

www.threadingbuildingblocks.org -> Перейдите в область загрузки.

person Eugene Roeder    schedule 12.12.2012