2017-01-29 3 views
2

Dieser Beitrag enthält alle Probleme, die ich (und andere Benutzer) beim Erstellen der Bibliothek aus Quellen hatte. Da es kein Tutorial gibt, habe ich beschlossen, diese Art von FAQ-Post zu erstellen, um alle Lösungen zusammen zu stellen. Hoffe es wird helfen!Erstellen von OpenCV 3.2.0 mit MinGW unter Windows

Konfiguration:
OpenCV 3.2.0
MinGW-w64 x86_64-6.1.0-win32-SEH-rt_v5-rev0

Sie sind willkommen, um weitere Informationen in den Antworten hinzuzufügen, wie es praktisch ist, alles an einem Ort zu haben.

+0

WOW wunderbar !! Wissen Sie, wie man 'dlib' mit OpenCV in Python für Windows verwendet? –

+0

Dies könnte für StackOver Documentation in Ordnung sein, aber es ist keine gültige Frage. – usr1234567

+0

@ usr1234567 es sollte eine Q & A Frage sein.Ich denke, es braucht ein paar bessere Lösungen für Fehler 3 und 4 als ein Dokument – Alex

Antwort

5
  1. Downloaden und entpacken Sie OpenCV in einen Ordner Ihrer Wahl.
  2. opencv\sources enthält jetzt CMakeLists.txt und alle anderen erforderlichen Dateien. Konfigurieren Sie das Projekt in CMake. CLion-Benutzer können einfach CMakeLists.txt öffnen.

    • Fix 1: sprintf() Familie Sicherheitsfehler.
      Fügen Sie add_definitions(-DSTRSAFE_NO_DEPRECATE) an den Anfang von CMakeLists.txt. Dies definiert das Symbol STRSAFE_NO_DEPRECATE für das Projekt und unterdrückt den Fehler.
    • Fix 2: 'zu viele Abschnitte' as.exe Fehler.
      Fügen Sie die folgenden Zeilen am Anfang von CMakeLists.txt (source):

      set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "-Wa,-mbig-obj") 
      set(CMAKE_C_FLAGS ${CMAKE_C_FLAGS} "-Wa,-mbig-obj") 
      
    • Fix 3: 'das letzte Argument ist ein 8-Bit-Direkt sein'.
      Gefunden nichts besser als Hardcoding 0x88 anstelle von mask_lo = _MM_SHUFFLE(2, 0, 2, 0) (binär 10 00 10 00) und 0xDD anstelle von mask_hi.
      Sobald my question eine bessere Antwort bekommt, werde ich diesen Absatz aktualisieren.
    • Fix 4: nein C++ 11 thread s in MinGW.
      Wieder eine schmutzige Lösung: #include <mingw.*.h> zu <mutex>, <thread>, <condition_variable> vor hinzugefügt. (Source)
  3. Bauen Sie es! Es dauert ungefähr 30-40 Minuten.
  4. Suchen Sie den Ausgabeordner. Es ist immer noch ein Chaos, aber enthält eine Makefile.
    Starten Sie cmd, cd in den Ausgabeordner und rufen Sie [path to compiler]\mingw32-make.exe install. (Source)
  5. Voila, Ihre Bibliothek ist in der install Ordner! Jetzt können Sie es zu einem gewünschten Ziel verschieben und Umgebungsvariablen einrichten.
+0

wie man diesen Fehler löst http://stackoverflow.com/questions/41930349/opencv-installation-error-while-mingw32-make-on-windows –

Verwandte Themen