FB18 - Das Forum für Informatik

fb18.de / Diplom Informatik / Schwerpunkte (HS)

BV: Vigra und Visual C++

BV: Vigra und Visual C++ 2007-05-27 15:05
KI
Hallo,

ich habe gerade Vigra 1.5 für Visual C++ installiert, bis dahin hab ich die Vigra nur unter Linux benutzt, wollte es jetzt aber mal unter Windows ausprobieren. Wenn ich das Projekt aber laufen lasse, bekomme ich immer die Fehlermeldung: Die Anwendung konnte nicht gestartet werden, weil vigraimpex_debug.dll nicht gefunden wurde. Neuinstallation könnte das Problem beheben. Tja, ich habe die Vigra nochmal neu installiert, aber leider ohne Erfolg.

Kann mir jemand helfen?

RE: BV: Vigra und Visual C++ 2007-05-28 12:11
KI
Ok, ich habe das Problem jetzt doch gelöst, lag wohl eher an meinen mangelden Visual C++-Kenntnissen, als an der Vigra-Umsetzung.

Aber nun ist glatt ein neues Problem aufgetaucht, was wohl die gleichen Ursachen hat… Hier kann mir vielleicht auch jemand weiterhelfen, der mit der Vigra noch nie was zu tun hatte.

Wenn ich eine neue Datei in die Vigra-Umgebung einbauen will, gibt er mir tausend Fehlermeldungen. Bastel ich den Code aber in eine bestehende Datei, funktioniert es, das liegt wohl an den sln- und vproj-Datein, die beschreiben, wo was hingehört. Die vproj Datei habe ich verstanden (also mehr oder minder) und geändert, Probleme habe ich mit der .sln-Datei, hier sind alle Dateien aufgeführt durch:

Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "smooth", "examples\smooth.vcproj", "{FC4FA3DD-0800-4270-A450-8FE824F65B29}" ProjectSection(ProjectDependencies) = postProject {E7937DF7-5628-4D5F-86EE-D787083408A8} = {E7937DF7-5628-4D5F-86EE-D787083408A8} EndProjectSection Wie füge ich dem ganzen ein neues Projekt hinzu? Wenn ich einfach smooth durch meine Datei ersetze, klappt das auch, aber das kann ja nicht die Dauerlösung sein. Wisst ihr, was ich ersetzen muss?

RE: BV: Vigra und Visual C++ 2007-05-28 15:29
Fred
Bin ich der einzige, der "Viagra" statt "Vigra" gelesen hat?

RE: BV: Vigra und Visual C++ 2007-05-28 15:37
Faleiro
Bin ich der einzige, der "Viagra" statt "Vigra" gelesen hat?
Nein :)

RE: BV: Vigra und Visual C++ 2007-05-28 16:03
KI
Google denkt auch, dass man Viagra meint…

RE: BV: Vigra und Visual C++ 2007-05-28 20:42
Anonymer User
Ok, ich habe das Problem jetzt doch gelöst, lag wohl eher an meinen mangelden Visual C++-Kenntnissen, als an der Vigra-Umsetzung.

Aber nun ist glatt ein neues Problem aufgetaucht, was wohl die gleichen Ursachen hat… Hier kann mir vielleicht auch jemand weiterhelfen, der mit der Vigra noch nie was zu tun hatte.

Wenn ich eine neue Datei in die Vigra-Umgebung einbauen will, gibt er mir tausend Fehlermeldungen. Bastel ich den Code aber in eine bestehende Datei, funktioniert es, das liegt wohl an den sln- und vproj-Datein, die beschreiben, wo was hingehört. Die vproj Datei habe ich verstanden (also mehr oder minder) und geändert, Probleme habe ich mit der .sln-Datei, hier sind alle Dateien aufgeführt durch:

Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "smooth", "examples\smooth.vcproj", "{FC4FA3DD-0800-4270-A450-8FE824F65B29}" ProjectSection(ProjectDependencies) = postProject {E7937DF7-5628-4D5F-86EE-D787083408A8} = {E7937DF7-5628-4D5F-86EE-D787083408A8} EndProjectSection Wie füge ich dem ganzen ein neues Projekt hinzu? Wenn ich einfach smooth durch meine Datei ersetze, klappt das auch, aber das kann ja nicht die Dauerlösung sein. Wisst ihr, was ich ersetzen muss?
1. Warum editierst Du die Solution-/Projektdateien denn per Hand und nicht innerhalb der IDE?
2. Was meinst Du genau mit "eine neue Datei in die Vigra-Umgebung einbauen"? Möchtest Du ein neues Projekt (mit dem Du eine weitere .EXE bauen kannst) einrichten, oder einfach ein bestehendes Projekt um ein neues Kompilationseinheit (h. + .cpp) erweitern?

RE: BV: Vigra und Visual C++ 2007-05-29 22:18
KI
Hallo,

ja, habe mich wohl etwas knapp ausgedrückt. Ich möchte ein neues Projekt (um eine exe zu erstellen) hinzufügen, wenn ich das über Visual C++ direkt mache, fehlen glaub ich gewisse Angaben, wie das Projekt zu kompilieren ist. Wie gesagt, die Probleme sind wohl eher auf mangelde Visual-C++ zurück zu führen…

RE: BV: Vigra und Visual C++ 2007-05-30 17:24
Anonymer User
Hallo,

ja, habe mich wohl etwas knapp ausgedrückt. Ich möchte ein neues Projekt (um eine exe zu erstellen) hinzufügen, wenn ich das über Visual C++ direkt mache, fehlen glaub ich gewisse Angaben, wie das Projekt zu kompilieren ist. Wie gesagt, die Probleme sind wohl eher auf mangelde Visual-C++ zurück zu führen…

1. Du könntest eine existierende, funktionierende Projektdatei (per Dateimanager) in ein neues Verzeichnis kopieren und dann per File > Add > Existing Projekt in eine SLN (neu oder bestehend) mit aufnehmen. Probleme dabei: einige Namen (ProjectGUID, RootNamespace per Texteditor) und Pfade (innerhalb der IDE) müssten anpasst werden. Ist einfacher, aber scheußlich.

2. Du erstellst dir mit File > Add > NewProjekt eine Win32ConsoleApplication (oder Win32Project wenn Du keine Konsole möchtest) in ein geeignetes Verzeichnis. Im Assistenten dann am besten erstmal "Precompiled Headers" als eine mögliche Quelle von Fehlern und Verwirrung ausschalten.

Du müsstest jetzt im Solution Explorer das neue Projekt sehen können. Per Project > Add Existing Item kannst Du die zu kompilierenden CPP Dateien (und die .H /.HPP Dateien) zur Baumstruktur hinzufügen.

Jetzt müssen nur noch die Projekteinstellungen angepasst werden: Im Solution Explorer das richtige Projekt markieren, dann Project > $NAME$ Properties aufrufen. Wichtig sind im jetzt erscheinenden Dialog nur relativ wenige Einstellungen:

A. C++ > General > Additional Include Directories - Hier kannst Du einstellen wo nach Headerdateien der verwendeten Bibliotheken gesucht werden soll. Das müsste sicherlich einen Verweis auf "….   vigra\include" enthalten, entweder als absoluten (z.B. "D:\VIGRA\vigra\include") oder relativen (z.B. "..\..\vigra\include") Pfad.

B. Linker > General >  Additional Library Directories - Pfade zu zu verwendenden .LIB Dateien. Vermutlich wirst Du hier den Pfad zu vigraimpex.lib eintragen wollen.

C. Linker > Input > Additional Dependencies - hier sollten die Namen der zu suchenden und zu linkenden Bibliotheken stehen, also vermutlich "vigraimpex.lib" (+ vielleicht auch libpng.lib libjpeg.lib libtiff.lib etc.)

Die Kategorien Manifest Tool, XML Document Generator, Browse Information, Build Events, Custom Build Step, Web Deployment o.ä sind für dich nicht interessant.

Wenn Du dich an dem alten Projekt orientierst, müsstest Du sehen können, was die ggf. nötigen Einstellungen für die restlichen Punkte sind. Probleme können beim direkten kopieren  höchstens noch die relativen Pfadangaben machen.

Wenn es dann immernoch klemmt, poste einfach die Fehlermeldung.

RE: BV: Vigra und Visual C++ 2007-06-06 21:58
KI
Wollte wenigstens noch ein Feedback für die ausführliche Hilfe geben, bin aber die letzten Tage nicht dazu gekommen, es auszuprobieren.

Habe es nun eben mal probiert und es hat wunderbar geklappt. Also, vielen Dank…