Seite 1 von 2

Erstellen eines Tiff-Plugins für Qt 4.0.1

Verfasst: 7. Oktober 2005 22:35
von Thomas
Hallo,

ich habe unter der folgenden Adresse http://artis.imag.fr/Software/TiffIO/ den Code für ein TiffIO-Plugin (geschrieben von Jean-Dominique Gascuel) gefunden. Ich habe versucht den Code sowohl unter Verwendung von Windows XP, MS Visual Studio.Net 2003 als auch MinGW++ zu erstellen, wobei ich jedoch beides Mal keinen Erfolg hatte.

Der Autor weist auf der Seite darauf hin, dass es bei der Erstellung unter Windows zu Problemen kommen kann. Ich habe sowohl den Weg über die DOS-Kommandobox als auch die graphische Benutzeroberfläche von Visual Studio probiert.

Hat irgend jemand vielleicht ebenfalls dieses Tiff-Plugin benutzt bzw. war in der Lage es erfolgreich zu erstellen. Ich brauche die aktuellste Version 1.1.0. Kann mir eventuell jemand erstellten Dateien für das Plugin zur Verfügung stellen? Dies würde mir sehr helfen. Danke!!

Gruß

Thomas

Verfasst: 7. Oktober 2005 23:02
von Christian81
Ich konnte ohne Probleme das Plugin erstellen. Einzig '/NODEFAULTLIB:libc.lib' musste ich zu den LFLAGS im Makefile hinzufügen.
Werde es dem Autor schreiben damit er dies standardmässig anhängt.
Allerdings hatte ich nicht die eval-Version sondern die normale gpl-Version. Die Makefiles sehen aber gleich aus - habe sie verglichen.

Verfasst: 8. Oktober 2005 09:06
von Thomas
Bei mir läuft der "make" bzw "nmake" -Prozeß eine ganze Weile, wobei sehr viele Warnungen ausgegeben werden. Irgendwann stoppt der Durchlauf mit der folgenden Fehlermeldung:

Code: Alles auswählen

mingw32-make: *** [Debug\Obj\TiffIo_Qt4.0] Error 1
Im Debugverzeichnis befindet sich danach eine ganze Reihe von xxx.o Dateien.

Zugegebener Maßen weis ich auch nicht genau, wie das Ergebnis aussehen soll. Bekomme ich bei erfolgreichem Durchlauf "dlls", die ich im entsprechenden Plugin-Ordner von Qt einfügen kann oder muss das Ergebnis ganz anders aussehen?

Danke für eine kurze Erklärung des Sachverhaltes.

Thomas

Verfasst: 8. Oktober 2005 09:11
von Christian81
Mit MinGW muss ich erstmal schauen und Qt/mingw erstellen - kann ne Weile dauern :)

Verfasst: 8. Oktober 2005 09:23
von Thomas
Wenn du mir mit MS Visual Studio weiter helfen könntest, wäre es mir sogar noch lieber. Wenn ich Visual Studio verwende erhalte ich die folgende Fehlermeldung:

Code: Alles auswählen

NMAKE : fatal error U1077: 'g++' : return code '0x1'
Ich schreibe mein Programm mit MSVS. Ich gehe davon aus, dass ich deshalb auch das Plugin mit VS erstellen muss. Ist diese Annahme richtig?

Thomas

Verfasst: 8. Oktober 2005 09:59
von lepsai
ich verstehe es nicht, wenn du mit VS arbeitest, wo kommt da die Fehlermeldung: U1077: 'g++' : return code '0x1'. Was hat da g++ zu suchen... Raus damit... Neues Projekt, Sourcen in VS rein, kompilieren und fertig. Nicht vergessen, die entsprechende tifflib Version runterzuziehen. Dann sollte alles klappen.

Verfasst: 8. Oktober 2005 11:01
von Thomas
Ich hatte neben einer QT - Academic -Version (mit Integration in VS) auch noch eine Qt Open Source Version (in Verbindung mit MinGW++) auf dem Rechner installiert. Vielleicht kam es dadurch zu einem Konflikt.

Auf alle Fälle habe ich nun die Open Source Version und MinGW++ deinstalliert. Nun läuft die Erstellung des Plugins in VS ohne Fehlermeldung durch.

Nun habe ich noch drei Fragen zur Verwendung des Plugins. Es wurden im Ordner Debug eine Anzahl von xxx.o Dateien, eine TiffIO.ilk, eine TiffIO.pdb, eine vc70.pdb, eine vc70.idb und eine TiffIO.exe erstellt.

Kann ich die Dateien aus dem Debug-Ordner verwenden oder muss ich irgendwie eine Release-Version erstellen? Welche dieser Dateien muss ich in das Pluginverzeichnis von Qt kopieren? Muss ich in meinem Programmcode auf dieses Plugin verweisen (z.b. irgend eine Datei includieren (wobei keine Headerdatei vorhanden ist) oder bindet Qt die Dateien automatisch ein?

Gruß

Thomas

Verfasst: 8. Oktober 2005 11:04
von lepsai
in DEINEM Anwendungsverzeichnis erstellst du Unterverzeichnis plugins und da packst du TIFFIO.DLL rein. Keine EXE.

Verfasst: 8. Oktober 2005 11:53
von Thomas
Da ich auf keinen grünen Zweig komme und bevor ich noch mehr Zeit mit erfolglosen Versuchen verbrate, melde ich mich noch einmal und beschreibe den Arbeitsablauf, den ich bis jetzt versucht habe. Vielleicht fällt jemanden ein Fehler auf:

1) in VS erstelle ich ein neues Project und wähle die Qt Library - Vorlage

2) über das Menu Qt|Import pri Datei lade ich die TiffIO.pri und rules.pri
Anmerkung: ich kann leider den Menupunkt Qt|OpenSolution form pro.file nicht benutzen, da diese Funktion einen grundlegenden Fehler hat und mit einer Fehlermeldung (bla bla bla ... Bitte wenden Sie sich an Trolltech...) endet.

3) ich aktivierte das "Build" - Kommando und im Debug-Fenster passiert nicht wirklich viel - es kommt eine Erfolgsmeldung (Build: 1 succeeded, 0 failed, 0 skipt); wenn ich mir das Dateiverzeichnis allerdings anschaue, enthält dieses außer einer HTML-Log-Datei (diese ist leer) keine weiteren Dateien

Ich habe seperat versucht, die TiffIO.cpp - Dateien, die mitgeliefert werden uber "Hinzufügen" zum Projekt zu tun und ein anderes Mal zusätzlich die ganzen Dateien aus der Libtiff-Bibliotek. Leider hatte dies alles keinen Erfolg, da ich bei diesen Versuchen eine ganze Menge Fehlermeldungen erhalten habe.

Auch auf die Gefahr hin, dass euch dieses Thema langsam nervt, stelle ich noch einmal ein paar Fragen. Wie muss der korrekte Arbeitsablauf aussehen? Welche Dateien muss ich zum Projekt hinzufügen?

Besten Dank!

Thomas

Verfasst: 8. Oktober 2005 11:59
von lepsai
1) Erstelle ein Dll-Projekt: New->Project->Win32 Dll-->Empty Project
2) Add to Project: Hier fuegst du die *.cpp und *.h dateien hinzu. NUR mit dem Plugin Code
3) Ändere die Project Settings : All Configurations-->C++ -->Include: $(QTDIR)/include, All Configurations-->Link: $(QTDIR)/3.x.x-mt.lib $(QTDIR)/qtmain.lib

4) Kompilieren und genießen

Verfasst: 8. Oktober 2005 12:03
von Christian81
lepsai hat geschrieben:1) Erstelle ein Dll-Projekt: New->Project->Win32 Dll-->Empty Project
2) Add to Project: Hier fuegst du die *.cpp und *.h dateien hinzu. NUR mit dem Plugin Code
3) Ändere die Project Settings : All Configurations-->C++ -->Include: $(QTDIR)/include, All Configurations-->Link: $(QTDIR)/3.x.x-mt.lib $(QTDIR)/qtmain.lib

4) Kompilieren und genießen
Oder liess einfach die Anleitung auf der Homepage - dort ist alles sehr gut beschrieben...

Verfasst: 8. Oktober 2005 12:42
von Thomas
Welche Homepage meinst du? Die von dem französischem Autor oder gibt es noch eine weitere? Kannst du mir die Adresse bitte geben?

Thomas

Verfasst: 8. Oktober 2005 12:52
von Christian81
Thomas hat geschrieben:Welche Homepage meinst du? Die von dem französischem Autor oder gibt es noch eine weitere? Kannst du mir die Adresse bitte geben?

Thomas
Natürlich die des Autors - bis unten gibt es eine Abschnitt 'Installation'

Verfasst: 8. Oktober 2005 12:53
von lepsai
Es ist langsam lächerlich... da ist eine Datei, die kompiliert werden muss... Und so viel Aufwand

Verfasst: 14. Juni 2006 08:03
von hilby
"Lächerlich" hin oder her - der thread ist ziemlich hilfreich
ich versuche auch schon seit zwei Tagen erfolglos diese Bibliothek mit Mingw zum laufen zu bekommen....

und den Hinweis "lies auf der Homepage des Autors" kann man sich wohl schenken....da steht nur dünnes

:evil: