Seite 1 von 1

*.ui-Datei mit Visiual Studio kompilieren - geht nicht!

Verfasst: 5. Februar 2007 15:27
von Djon
Hallo!

Ich habe bis jetzt immer nur unter Qt 3.3.2 gearbeitet und jetzt wollte ich ein Projekt für mein Studium mit der neuen Version 4.2.2 erstellen, doch leider stehe jetzt vor einem für mich nicht lösbaren Problem. Unter 3.3.2 habe ich immer den folgenden Code als benutzerdefiniertes Erstellen für die *.ui-Dateien eingetragen:

Code: Alles auswählen

Befehle
%qtdir%\bin\uic.exe $(InputPath) -o $(InputDir)\..\tmp\$(InputName).h  
%qtdir%\bin\uic.exe $(InputPath) -i $(InputName).h -o $(InputDir)\..\tmp\$(InputName).cpp  
%qtdir%\bin\moc.exe $(InputDir)\..\tmp\$(InputName).h -o $(InputDir)\..\tmp\moc_$(InputName).cpp

Ausgaben:
$(InputDir)\..\tmp\$(InputName).h
$(InputDir)\..\tmp\$(InputName).cpp
$(InputDir)\..\tmp\moc_$(InputName).cpp
und dadurch war das Kompilieren der *.ui-Dateien kinderleicht gewesen. Jetzt habe ich es unter 4.2.2 versucht und kriege gleich einige Fehlermeldungen und VS ist nicht in der lage die *.ui-Datei zu kompilieren. Ich habe bereits gelesen, dass uic.exe sich seit der Qt3 verändert hat. Wie müsste das benutzerdefiniertes Erstellen bei Qt4 eigentlich aussehen?
Hier ist die VS-Fehlermeldung:

Code: Alles auswählen

------ Erstellen gestartet: Projekt: client, Konfiguration: Debug Win32 ------
Ein benutzerdefinierter Buildschritt wird ausgeführt.
Qt User Interface Compiler version 4.2.2
Usage: C:\Projekte\Qt\4.2.2\bin\uic.exe [options] <uifile>
  -h, -help                 display this help and exit
  -v, -version              display version
  -d, -dependencies         display the dependencies
  -o <file>                 place the output into <file>
  -tr <func>                use func() for i18n
  -p, -no-protection        disable header protection
  -g <name>                 change generator
Qt User Interface Compiler version 4.2.2
Usage: C:\Projekte\Qt\4.2.2\bin\uic.exe [options] <uifile>
  -h, -help                 display this help and exit
  -v, -version              display version
  -d, -dependencies         display the dependencies
  -o <file>                 place the output into <file>
  -tr <func>                use func() for i18n
  -p, -no-protection        disable header protection
  -g <name>                 change generator
moc: Too many input files specified
Usage: moc [options] <header-file>
  -o<file>           write output to file rather than stdout
  -I<dir>            add dir to the include path for header files
  -E                 preprocess only; do not generate meta object code
  -D<macro>[=<def>]  define macro, with optional definition
  -U<macro>          undefine macro
  -i                 do not generate an #include statement
  -p<path>           path prefix for included file
  -f[<file>]         force #include, optional file name
  -nw                do not display warnings
  -v                 display version of moc
Project : error PRJ0019: Ein Tool hat einen Fehlercode aus folgender Quelle zurückgegeben: "Ein benutzerdefinierter Buildschritt wird ausgeführt."
Das Buildprotokoll wurde unter "file://c:\Dokumente und Einstellungen\Djon\Eigene Dateien\Studium\Auto_Tuto_Sys\entwurfsarbeit\client\debug\BuildLog.htm" gespeichert.
client - 1 Fehler, 0 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
Ich hoffe, ihr könnt mir helfen.
Vielen Dank im Voraus!

Mfg Djon

Verfasst: 5. Februar 2007 16:03
von Christian81
Nimm qmake oder cmake.

Verfasst: 6. Februar 2007 09:16
von macman
Die Fehlermeldung sagt doch bereits alles aus. UIC bekommt falsche Parameter und schreibt gleich dabei was erlaubt ist.

Re: *.ui-Datei mit Visiual Studio kompilieren - geht nicht!

Verfasst: 6. Februar 2007 11:23
von Volker
Djon hat geschrieben:Hallo!

Ich habe bis jetzt immer nur unter Qt 3.3.2 gearbeitet und jetzt wollte ich ein Projekt für mein Studium mit der neuen Version 4.2.2 erstellen, doch leider stehe jetzt vor einem für mich nicht lösbaren Problem. Unter 3.3.2 habe ich immer den folgenden Code als benutzerdefiniertes Erstellen für die *.ui-Dateien eingetragen:
Mfg Djon
Guck doch mal im Wiki in der Tutorial Sektion.
Da gibt's ein Tutorial, wo die Integration in Visual Studio ausführlich beschrieben ist.