nicht aufgelöster externer Symbolfehler beim Importieren von Bibliotheken für OpenCV2.3 in Visual Studios 2010 Express C ++

7

posten Sie hier zum ersten Mal eine Frage zu stackoverflow. Entschuldigung, wenn ich die Formatierung metze!

Ich versuche, ein grundlegendes Tutorial zu openCV zu folgen, nämlich dieses: Ссылка

Ich habe verschiedene Online-Tutorials zur Installation von openCV angeschaut, darunter:

Setup OpenCV-2.3 für Visual Studio 2010 und  opencv.willowgarage.com/wiki/VisualC%2B%2B

ohne viel Glück.

Die aktuelle Version, die ich gerade laufe, ist OpenCV 2.3.0. Ich bin derzeit auf Windows 7 mit Microsoft Visual C ++ Express 2010 ausgeführt.

Wenn ich versuche, meinen Code zu erstellen und auszuführen, erhalte ich folgende Fehler:

%Vor%

Mein Code ist wie folgt:

%Vor%

Ich habe Open CV installiert C:\OpenCV2.3

Ich habe zusätzliche Abhängigkeiten hinzugefügt, zusätzliche Verzeichnisse, ect. Die Einstellungen für mein Projekt lauten wie folgt:

Zusätzliche Abhängigkeiten:

%Vor%

Zusätzliche Bibliotheksverzeichnisse: C:\OpenCV2.3\build\x64\vc10\lib;C:\OpenCV2.3\build\x64\vc10\bin;C:\OpenCV2.3\build\x64\vc10\staticlib;%(AdditionalLibraryDirectories)

Zusätzliche Include-Verzeichnisse:

%Vor%

Ich habe auch einen Pfad zu den DLL's auf meiner Pfadvariablen für Windows eingefügt:

%Vor%

Ich habe mir andere Foren angeschaut, andere Stack-Overflow-Fragen, ect ohne viel Hilfe. Ich habe versucht, dies für einen Großteil des Wochenendes zu erledigen. Jede Hilfe würde sehr geschätzt werden!

    
Kevin Jonaitis 06.05.2012, 20:55
quelle

6 Antworten

19

Wenn Sie explizit die Verbindung mit allen erforderlichen Bibliotheken eingerichtet haben, aber Verbindungsfehler immer noch angezeigt werden, vermischen Sie möglicherweise 64/32-Bit-Bibliotheken und Anwendungen.

i.e. Stellen Sie sicher, dass alle Bibliotheken Punkt-zu-32-Bit-Versionen von Bibliotheken enthalten, wenn Sie eine 32-Bit-Anwendung erstellen.

    
Oleh Olkhovskyy 15.01.2013, 15:32
quelle
3

Ich hatte ein ähnliches Problem, als ich versuchte, cvblob library (http://code.google.com/p/cvblob/) unter Windows 7 32bit mit Visual Studio 2010 zu kompilieren.

Wenn alles andere richtig gemacht ist, versuche meine Vermutung, die unten geschrieben ist. Wenn nicht mit diesen Tutorials beginnen:

  • Installation von OpenCV: Ссылка
  • Konfigurieren Sie Ihre Projekte zum Erstellen und Arbeiten mit opencv: Ссылка .

    Diese Silimar-Linker-Fehler sind nach dem Ändern eines Projekts verschwunden Eigenschaften:

    • In VS 2010 öffnen Sie Ihre Lösung
    • Öffnen Sie den Lösungsexplorer (Ansicht- & gt; Projektmappen-Explorer)
    • Suchen Sie ein Projekt, das diese Linkfehler erzeugt hat. (In meinem Beispiel war es ein Projekt namens "cvblob" innerhalb der Lösung namens "cvBlob" generiert von cmake.)
    • Klicken Sie mit der rechten Maustaste auf dieses Projekt
    • Wählen Sie im Kontextmenü Eigenschaften
    • Auf der linken Seite wählen Sie Konfigurationseigenschaften - & gt; Allgemein und finde ein Feld namens "Zielerweiterung"
    • Unter Projektdetails finden Sie Ihre Projekteinstellungen für "Konfigurationstyp"
    • Analysiere sie. In meinem speziellen Problem beim Kompilieren von cvblob musste ich Zielerweiterung auf .lib und Konfigurationstyp auf setzen Statische Bibliothek. Dies ist auch eine Lösung für Leute, die versuchen zu kompilieren cvblob-Bibliothek in Visual Studio 2010. Machen Sie das gleiche für die Debug- und Release-Version, falls nötig.

Fehler, die ich bekam, waren:

  

Fehler 24 Fehler LNK2019: nicht aufgelöstes externes Symbol _cvSetImageROI   referenziert in Funktion   _cvSetImageROItoBlob C: \ cvblob \ build \ lib \ cvblob.obj cvblob

     

Fehler 25 Fehler LNK2019: nicht aufgelöstes externes Symbol _cvSaveImage   referenziert in Funktion   _cvSaveImageBlob C: \ cvblob \ build \ lib \ cvblob.obj cvblob

     

Fehler 26 Fehler LNK2019: nicht aufgelöstes externes Symbol _cvGetImageROI   referenziert in Funktion   _cvSaveImageBlob C: \ cvblob \ build \ lib \ cvblob.obj cvblob

     

Fehler 27 Fehler LNK2001: ungelöstes externes Symbol   _cvError C: \ cvblob \ bauen \ lib \ cvcolor.obj cvblob

     

Fehler 28 Fehler LNK2019: nicht aufgelöstes externes Symbol _cvError referenziert   in der Funktion _cvRenderBlob C: \ cvblob \ build \ lib \ cvblob.obj cvblob

     

Fehler 29 Fehler LNK2001: nicht aufgelöstes externes Symbol   _cvError C: \ cvblob \ bauen \ lib \ cvlabel.obj cvblob

     

Fehler 30 Fehler LNK2001: nicht aufgelöstes externes Symbol   _cvError C: \ cvblob \ bauen \ lib \ cvcontour.obj cvblob

     

Fehler 31 Fehler LNK2001: ungelöstes externes Symbol   _cvError C: \ cvblob \ bauen \ lib \ cvtrack.obj cvblob

     

Fehler 32 Fehler LNK2019: nicht aufgelöstes externes Symbol _cvLine referenziert   in der Funktion _cvRenderBlob C: \ cvblob \ build \ lib \ cvblob.obj cvblob

     

Fehler 33 Fehler LNK2001: ungelöstes externes Symbol   _cvLine C: \ cvblob \ bauen \ lib \ cvcontour.obj cvblob

     

Fehler 34 Fehler LNK2019: nicht aufgelöstes externes Symbol _cvRectangle   referenziert in Funktion   _cvRenderBlob C: \ cvblob \ bauen \ lib \ cvblob.obj cvblob

     

Fehler 35 Fehler LNK2001: nicht aufgelöstes externes Symbol   _cvRectangle C: \ cvblob \ bauen \ lib \ cvtrack.obj cvblob

     

Fehler 36 Fehler LNK2019: nicht aufgelöstes externes Symbol _cvSetZero   referenziert in der Funktion _cvLabel C: \ cvblob \ build \ lib \ cvlabel.obj cvblob

     

Fehler 37 Fehler LNK2019: ungelöst externes Symbol _cvPutText   referenziert in Funktion   _cvRenderTracks C: \ cvblob \ build \ lib \ cvtrack.obj cvblob

     

Fehler 38 Fehler LNK2019: nicht aufgelöstes externes Symbol _cvInitFont   referenziert in Funktion   _cvRenderTracks C: \ cvblob \ build \ lib \ cvtrack.obj cvblob

     

Fehler 39 Fehler LNK1120: 9 ungelöst   externals C: \ cvblob \ build \ lib \ libs \ Freigabe \ cvblob.dll cvblob

Ich hoffe, es wird jemandem helfen, die cvblob Bibliothek in Visual Studio 2010 zu kompilieren.

    
Marcin_PL 19.05.2012 15:25
quelle
2

Ich hatte ein ähnliches Problem in vs10 und ich habe vergessen, die cv210d.lib hinzuzufügen. Hinzufügen zu Projekteigenschaften- & gt; Konfigurationseigenschaften- & gt; Linker- & gt; Input- & gt; Zusätzliche Abhängigkeiten halfen mir bei der Lösung dieses Problems. Ich habe von der Frage gefunden, dass opencv_cv230.lib nicht in zusätzlichen Abhängigkeiten enthalten ist, die das Problem lösen.

    
sAm 27.03.2014 11:25
quelle
1

Ich hatte das gleiche Problem, in vs10

Ich habe die "opencv_core246d.lib" zum Hinzufügen verpasst. Hinzufügen zu Linker- & gt; Eingabe- & gt; Zusätzliche Abhängigkeiten behobener Fehler.

    
ArmanBM 30.07.2013 01:28
quelle
1

Dies könnte bei der neueren Version helfen.
Für Version 2.4.8 löst das Hinzufügen von opencv_imgproc248.lib den folgenden Verknüpfungsfehler auf:

%Vor%     
Cloud Guy 11.01.2014 16:33
quelle
0

für mich wurde dieser Fehler behoben, indem zwei explizite lib-Namen unter Eingabe hinzugefügt wurden (Konfigurationseigenschaften - & gt; Linker - & gt; Eingabe - & gt; zusätzliche Abhängigkeiten).

Wenn Sie opencv installieren, wird auf der Grundlage der Version eine Nummer angehängt. Zum Beispiel habe ich opencv2.4.13 und es hat 2413 an alle seine Bibliotheken, opencv_highgui2413.lib (opencv_highgui2413d.lib für Debug-Build) angehängt.

Überprüfen Sie nun, welche Bibliotheken die Funktionen haben, die in Fehlern angezeigt wurden. highgui hat cvshowimage Funktion - & gt; Sie können dies erreichen, indem Sie es online anzünden. Ссылка

Fügen Sie dann diese Bibliothek hinzu, um Ihre Lösung einzugeben und zu erstellen.

    
Sarath Babu Dnv 03.07.2017 09:59
quelle