2016-04-11 7 views
1

Ich versuche, ein einfaches OpenCV-Programm über Visual Studio 2013 zu kompilieren. Nach diesem Tutorial http://docs.opencv.org/2.4/doc/tutorials/introduction/windows_install/windows_install.html, habe ich alle OpenCV-Bibliotheken eingerichtet. Das Programm baut kein Problem, aber wenn ich es im Debug-Modus laufen bekomme ich einen Fehler, der lautet:OpenCV - Debug DLL-Bibliotheken fehlen

The program can't start because opencv_highgui310d.dll is missing.

Dies geschieht mit videoio, imgproc und core. Alle davon befinden sich im hinzugefügten Verzeichnis auf dem Eigenschaftenblatt.

Ich habe die Verzeichnisse zum Linker aus dem Installationsordner in meinem opencv_build-Verzeichnis hinzugefügt.

+3

DLLs werden nicht im Build-Prozess verwendet, daher ändert sich beim Ändern der Build-Einstellungen nichts. Es ist das Windows-Betriebssystem, das diese DLLs finden muss, wenn Ihr Programm ausgeführt wird. Daher sind die Methoden, die Windows verwendet, um DLLs zu finden, erledigt (suche ausführbares Verzeichnis, suche 'PATH', etc.) [Siehe hier] (https://msdn.microsoft.com/en-us/library/windows/desktop/ms682586 % 28v = vs.85% 29.aspx) für die vollständige Übersicht darüber, wie Windows DLLs sucht und findet. – PaulMcKenzie

Antwort

1

Windows muss fehlende DLLs finden. Sie befinden sich normalerweise irgendwo in Ihrem opencv-Ordner, sie sollten leicht zu finden sein. Danach können Sie entweder tun:

  • Kopieren dlls direkt an denselben Ordner mit exe Sie ausgeführt werden (Sie werden diese im Falle der Bereitstellung müssen halten als auch)
  • in Visual Studio ändern Umgebung von: Projekt ->'Projektname' Eigenschaften ->Konfigurationseigenschaften ->Debuggen ->Umwelt und geben ein: PATH = $path_to_opencv_dll_folder