Hallo zusammen, ich habe unter MSVC++ 6.0 Autoren Edition OpenCV installiert, also OpenCX.exe herunter geladen und installiert, anschl. im VC++ unter Extras Optionen unter Include-Dateien alle Includes bekannte gemacht und unter Bibliotheksdateien alle Lib-Pfade angegeben. Wenn ich nun einen Beispiel-Code von OpenCV erstellen möchte bekomme ich immer unaufgelöste Symbole, es schein als fehle ihm eine LIB. Wenn ich aber unter Projekt Einstellungen uter Linker alle *.libs nochmal eintrage funktioniert es. Nun die Frage was muß ich machen um nicht jedes mal diese Libs bekannt zu geben - hab sie ja schon unter Extra - Optionen angegeben? Vielen Dank erstmal
Nein, unter "Extras-Optionen" hast Du nur angegeben, wo nach Libraries gesucht werden soll, aber nicht, mit welchen gelinkt werden soll. Der Linker durchsucht nicht alle verfügbaren Libraries im LIB-Path, wenn er ein nicht aufgelöstes Symbol findet, sondern ausschließlich die, die ihm als zu linkende Libraries angegeben werden. Andernfalls gäbe es ganz massive Probleme, Libraries für verschiedene Compilereinstellungen auseinanderzuhalten (single/multithreaded, debug/release, static/dll etc.) - denn alle diese Libraries enthalten dieselben Symbole. Eine (nichtportierbare) Hilfsfunktion bietet VC++6.0: #pragma comment(lib, "blafusel.lib") Das in eine zu einer Library gehörende Headerdatei geschrieben bindet beim Linken die betreffende Library ein. Du verwendest in Deinem Projekt sicherlich irgendeine die Funktionen der Library beschreibende Headerdatei - pack da das Pragma 'rein und gut ist. Allerdings: Das ist MS-spezifisch und wird von anderen Compilern nicht unterstützt.
Hallo Rufus, vielen Danke für deine ausführliche Erklärung, es ist mir nun etwas klarer mit den Pfadangaben, und auch Danke für deinen Tipp.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.