Seite 1 von 1

QT Designer findet Modul nicht

Verfasst: 30. März 2011 11:58
von MaxHeadroom
Hi!

Habe folgendes Problem
Ich habe gerade QWT V6.0.0 RC5 (mit V5.2.1 passiert das selbe) compiliert und anschließend das Designer-plugin.
Die .dll und die .a in das Verzeichnis C:/Dev/Qt/qt/plugins/designer/ kopiert

Unter Designer-Hilfe-Plugins steht dann folgendes:

C:/Dev/Qt/qt/plugins/designer/qwt_designer_plugin.dll
Die Bibliothek C:/Dev/Qt/qt/plugins/designer/qwt_designer_plugin.dll kann nicht geladen werden: Das angegebene Modul wurde nicht gefunden.

Welches Modul ist gemeint?

Oder mache ich etwas falsch?


Mit bestem Dank im voraus


PS:Ich benutze Windows XP, Qt sdk opensource 2010.05, MinGW, QWT V6.0.0RC5 und QWT V5.2.1.
Es wurde weder am Qt-Source noch am QWT-Source etwas geändert.

Verfasst: 30. März 2011 12:06
von franzf
In der INSTALL steht doch:

Code: Alles auswählen

C) Win32/MinGW 
--------

Start a Shell, where Qt4 is initialized. ( F.e. with
"Programs->Qt by Trolltech ...->Qt 4.x.x Command Prompt" ).

qmake qwt.pro
make
make install
Warum kopierst du dann manuell? make install legt die dlls an die richtigen Stellen, wo sie dann auch gefunden werden können (sollten).

Verfasst: 30. März 2011 13:30
von MaxHeadroom
Weil dann folgendes passiert (bei V6.0.0 RC5):
C:\Dev\QWT600RC5\designer>mingw32-make install
mingw32-make -f Makefile.Debug install
mingw32-make[1]: Entering directory `C:/Dev/QWT600RC5/designer' copy /y "plugins\designer\qwt_designer_plugin.pdb" "c:\Qwt-6.0.0-rc5\plugins\designer\qwt_designer_plugin.pdb"
Das System kann die angegebene Datei nicht finden.
mingw32-make[1]: [install_target] Error 1 (ignored)
copy /y "plugins\designer\qwt_designer_plugin.dll" "c:\Qwt-6.0.0-rc5\plugins\des
igner\qwt_designer_plugin.dll"
1 Datei(en) kopiert.
mingw32-make[1]: Leaving directory `C:/Dev/QWT600RC5/designer'
mingw32-make -f Makefile.Release install
mingw32-make[1]: Entering directory `C:/Dev/QWT600RC5/designer'
copy /y "plugins\designer\qwt_designer_plugin.dll" "c:\Qwt-6.0.0-rc5\plugins\designer\qwt_designer_plugin.dll"
1 Datei(en) kopiert.
mingw32-make[1]: Leaving directory `C:/Dev/QWT600RC5/designer'
Die DLL wird nach c:\Qwt-6.0.0-rc5\plugins\designer\ kopiert.
Dort gehört sie definitiv nicht hin.

Unter QWT V5.2.1 wird die DLL mit install richtig kopiert und genau in das Verzeichnis wo ich die Datei händisch reinkopiert habe.

Das Ergebnis bleibt aber in beiden Fällen das selbe. Der Designer meldet: "... Das angegebene Modul wurde nicht gefunden. "

Muss man ausser das man die DLL ins plugin-Verzeichnis kopiert (manuell oder durch install) noch etwas anderes machen?

mfg

Verfasst: 30. März 2011 13:39
von franzf
Nur eine Datei wird kopiert? komisch...
Bei mir landet deutlich mehr auf der Platte:

Code: Alles auswählen

/usr/lib64/qt4/features6/qwtconfig.pri
/usr/lib64/qt4/features6/qwt.prf
/usr/lib64/qt4/plugins/designer6/libqwt_designer_plugin.so
/usr/lib64/libqwt6.so.6.0.0
[und debug-libs+headers+symlinks]
Muss dann hier aussteigen, weil ich kein WIndows hab, und deshalb auch gar keine Erfahrung, wie da die Einbindung solcher Plugins läuft.

BTW.: Du verwendest zum Kompilieren des Plugins schon die selbe MinGW, mit der auch Qt und der Designer übersetzt und gelinkt wurden? Und die libqwt kann beim Designer-Start auch gefunden werden? Nicht dass es ein reines Dll-Lade-Problem ist.

Verfasst: 30. März 2011 14:35
von MaxHeadroom
Es wird nur eine Datei kopiert. Hier die fehlerfreie Install der V5.2.1:

C:\Dev\QWT521\designer>mingw32-make install
mingw32-make -f Makefile.Release install
mingw32-make[1]: Entering directory `C:/Dev/QWT521/designer'
copy /y "plugins\designer\qwt_designer_plugin5.dll" "c:\Dev\Qt\qt\plugins\design
er\qwt_designer_plugin5.dll"
1 Datei(en) kopiert.
mingw32-make[1]: Leaving directory `C:/Dev/QWT521/designer'

Es wird nur die "qwt_designer_plugin5.dll" kopiert.

Besten Dank für deine Hilfe.
Ich hoffe es findet sich noch jemand der mir bei der Konstellation Qt/Win/MinGW/QWT Erfahrung hat.

mfg

Verfasst: 31. März 2011 09:53
von xchrisx
Hey,
Wo findet man die Vers. 6 von Qwt?

Verfasst: 31. März 2011 10:17
von MaxHeadroom
Ich sags aber nur wenn du mir sagst wie das mit dem Designer-Plugin funktioniert!

Nein Scherz bei Seite.

Einfach hier:

http://sourceforge.net/projects/qwt/

grüner Button in der Mitte.

Falls du selbst das Designer-Plugin verwendest, wäre es sehr nett wenn du mir sagen könntest, wie man das installiert.

mfg

Verfasst: 31. März 2011 10:43
von xchrisx
ah okay.
ich hatte immer im svn repository geschaut . da ist noch kein neuer tag drin.

ich guck mal wie das bei mir aussieht.

Verfasst: 2. April 2011 16:37
von Uwe
MaxHeadroom hat geschrieben:Die DLL wird nach c:\Qwt-6.0.0-rc5\plugins\designer\ kopiert.
Dort gehört sie definitiv nicht hin.
Doch genau da gehört sie hin - zumindest habe ich das so in den Qwt Projekt Dateien festgelegt. Wenn Du das anders haben willst ändere die Projekt Dateien aber halte Dich trotzdem immer an "qmake + make + make install".

Ich weiss, dass viele Anwender die Qwt Dateien einfach in die Qt Installationsverzeichnissse reinkopieren, weil deren Pfade in den Qt Tools vorkonfiguriert sind, anstatt die Pfade für die Qwt Verzeichnisse hinzu zu konfigurieren ( das gilt übrigens auch für die prf Dateien, die in Qwt6 dazu gekommen sind ).

Warum es besser ist, dass Qwt sich sauber in einem eigenen Verzeichnis installiert brauche ich hoffentlich nicht zu begründen.

Uwe

Verfasst: 4. April 2011 07:33
von MaxHeadroom
Hi Uwe!

Du verwechselst hier etwas.
Du meinst die Librarys für die Programmierung, ich meine aber das Designer-Plugin.

Dieses Plugin gehört in das entsprechende Designer-Unterverzeichnis damit der Designer es auch findet.

Dieses Verzeichnis ist bei mir:
c:\Dev\Qt\qt\plugins\designer\

Was die Library-Files betrifft, hast du natürlich recht.

mfg

PS: Gibt es hier wirklich niemanden, der mir beim Desinerplugin helfen kann (Windows, Qt, MinGW, QWT)?

Verfasst: 4. April 2011 08:28
von Uwe
MaxHeadroom hat geschrieben: Du meinst die Librarys für die Programmierung, ich meine aber das Designer-Plugin.
Ich auch - genau wie für alle anderen Qt Plugins kannst Du konfigurieren, wo der Designer ( oder Creator ) Plugins überall suchen soll. Dasselbe gilt für die Features Dateien. In Deinem Fall ist halt c:\Dev\Qt\qt\plugins\designer vorkonfiguriert - das ist aber auch schon alles.

Qwt- und Qt Installation zu vermischen halte ich grundsätzlich für eine schlechte Idee. Mal abgesehen davon, dass es das System unübersichtlich macht, schafft es Abhängigkeiten, die so nicht stimmen. z.B gibt es keinen Grund Qwt 2x zu installieren, bloss weil Du Qt 4.7.1 und Qt 4.7.2 auf Deinem System hast.

Manuell rumkopieren ist aber in jedem Fall schlecht. Das ist fehleranfällig, man vergisst gerne mal Dateien und verliert die Möglichkeit automatisch zu deinstallieren ( make uninstall ). Also wenn Du Pfade wirklich verändern willst editiere die Qwt Projekt Dateien und halte Dich dann aber wieder an den bekannten 3-Sprung.

Uwe

Verfasst: 4. April 2011 09:16
von MaxHeadroom
Hi!

Danke für die Info, wusste ich nicht.

Werde gleich mal schaun wo ich das einstellen kann.

Hast du Erfahrung mit den Designer Plugins bzw. hast du eine Idee wo das Problem bei mir liegen kann?

mfg

Verfasst: 5. April 2011 08:18
von Uwe
MaxHeadroom hat geschrieben:Werde gleich mal schaun wo ich das einstellen kann.
z.B. über die QT_PLUGIN_PATH Umgebungsvariable - es sollte aber auch über eine qt.conf Datei gehen. Siehe: http://doc.qt.nokia.com/4.7/deployment-plugins.html ( ich sollte das bei Gelegenheit noch in der INSTALL Datei dokumentieren. )

Der erste Schritt in der Qwt INSTALL Anleitung lautet übrigens: qwtconfig.pri lesen und gegebenfalls anpassen. In dem Abschnitt über das Designer Plugin findest Du die Variable QWT_INSTALL_PLUGINS, über die der Installationspfad festgelegt wird. Wenn Du in das Qt Verzeichnis installieren willst, genügt es die auskommentierte Zeile darunter zu aktivieren.

Neu in Qwt 6 ist die Unterstützung von Qmake Features in Form der Datei qwt.prf. Wenn man das korrekt konfiguriert ( wie ist in der INSTALL Datei beschrieben ) kann man dann einfach "CONFIG += qwt" in die Applikations Projekt Datei schreiben. Damit das funktionieren kann wird qwtconfig.pri ebenfalls installiert und von qwt.prf includiert. D.h. wenn Du an qwtconfig.pri vorbei Pfade manipulierst ( das Installationsverzeichnis vom Designer ist in dem Zusammenhang aber unkritisch ) kann das zerbrechen.
Hast du Erfahrung mit den Designer Plugins bzw. hast du eine Idee wo das Problem bei mir liegen kann?
Die üblichen Verdächtigen unter Windows sind:

1) Compiler Durcheinander: z.B der Designer/Creator wurde mit MinGW gebaut und Qwt mit Visual Studio.
2) Debug/Release: Qwt wurde im Debug Modus gebaut und der Designer/Creator im Release Modus.
3) Die Qwt Bibliothek ( nicht das Plugin ! ) kann nicht über die PATH Variable aufgelöst werden.

Eventuell hilft das Setzten von QT_DEBUG_PLUGINS bei der Analyse.

Uwe

Re: QT Designer findet Modul nicht

Verfasst: 3. Oktober 2011 11:16
von Alx.W
Ich habe das gleiche Problem gehabt. Nachdem ich qwt.dll in den bin\ Verzeichnis, wo auch die designer.exe liegt, kopiert habe lief alles.