Seite 1 von 1

[gelöst] Die eingegebene Zeile ist zu lang

Verfasst: 7. Juni 2008 22:20
von Nargaff
Hi,

ich versuche hier gerade QT 4.4.0 auf Windows 2000 zu übersetzen und stosse da anscheinen an die Grenzen der Eingabeaufforderung. Der Vorgang bricht mit der Meldung "Die eingegebene Zeile ist zu lang." ab. Hier mal die letzten Zeilen mit dem Fehler:

mingw32-make[2]: Entering directory `E:/Qt/4.4.0/src/3rdparty/webkit/WebCore'
gcc -x c-header -c -g -DQT_SHARED -DQT_THREAD_SUPPORT -DUNICODE -DQT_LARGEFILE_SUPPORT -DBUILDING_QT__=1 -DUSE_SYSTEM_MALLOC -DNDEBUG -DQT_MAKEDLL -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_MOC_COMPAT -D_USE_MATH_DEFINES -DBUILD_WEBKIT -DENABLE_ICONDATABASE=0 -DENABLE_XPATH=1 -DENABLE_SVG=1 -DWTF_CHANGES=1 -DBUILDING_QT__ -DWTF_USE_JAVASCRIPTCORE_BINDINGS=1 -DQT_DLL -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I"..\..\..\..\include\QtCore" -I"..\..\..\..\include\QtCore" -I"..\..\..\..\include\QtNetwork" -I"..\..\..\..\include\QtNetwork" -I"..\..\..\..\include\QtGui" -I"..\..\..\..\include\QtGui" -I"..\..\..\..\include" -I"..\WebKit\qt\Api" -I"..\JavaScriptCore" -I"..\JavaScriptCore\kjs" -I"..\JavaScriptCore\bindings" -I"..\JavaScriptCore\bindings\c" -I"..\JavaScriptCore\wtf" -I"..\JavaScriptCore\ForwardingHeaders" -I"." -I"ForwardingHeaders" -I" platform" -I"platform\network" -I"platform\graphics" -I"loader" -I"page" -I"css" -I"dom" -I"bridge" -I"editing" -I"rendering" -I"history" -I"xml" -I"html" -I"plugins" -I"..\..\..\..\include\QtWebKit" -I"tmp\rcc\debug_shared" -I"tmp" -I"generated" -I"tmp" -I"..\JavaScriptCore" -I"..\JavaScriptCore\kjs" -I"..\JavaScriptCore\bindings" -I"..\JavaScriptCore\bindings\c" -I"..\JavaScriptCore\wtf" -I"..\JavaScriptCore\bindings\qt" -I"..\JavaScriptCore\pcre" -I"e:\Qt\4.4.0\src\3rdparty\webkit\WebKitBuild\Debug\JavaScriptCore\kjs\tmp" -I"platform\qt" -I"platform\network\qt" -I"platform\graphics\qt" -I"platform\graphics\svg\qt" -I"loader\qt" -I"page\qt" -I"..\WebKit\qt\WebCoreSupport" -I"..\WebKit\qt\Api" -I"." -I"ForwardingHeaders" -I"..\..\webkit" -I"..\JavaScriptCore\kjs" -I"..\JavaScriptCore\bindings" -I"platform" -I"platform\network" -I"platform\graphics" -I"platform\graphics\svg" -I"platform\graphics\svg\filters" -I"loader" -I"loader\icon" -I"css" -I"dom" -I"page" -I"bridge" -I"editing" -I"rendering" -I"history" -I"xml" -I"html"-I"bindings\js" -I"ksvg2" -I"ksvg2\css" -I"ksvg2\svg" -I"ksvg2\misc" -I"ksvg2\events" -I"platform\image-decoders" -I"e:\Qt\4.4.0\include\ActiveQt" -I"tmp\moc\debug_shared" -I"." -I"..\..\..\..\mkspecs\win32-g++" -o tmp\obj\debug_shared\WebKit_pch.h.gch\c ..\WebKit\qt\WebKit_pch.h
Die eingegebene Zeile ist zu lang.
mingw32-make[2]: *** [tmp/obj/debug_shared/WebKit_pch.h.gch/c] Error 255
mingw32-make[2]: Leaving directory `E:/Qt/4.4.0/src/3rdparty/webkit/WebCore'
mingw32-make[1]: *** [debug-all] Error 2
mingw32-make[1]: Leaving directory `E:/Qt/4.4.0/src/3rdparty/webkit/WebCore'
mingw32-make: *** [sub-webkit-make_default-ordered] Error 2

Hat jemand vielleicht einen Tip wie ich das Problem umgehen kann?

Gruss
Bernhard

Verfasst: 8. Juni 2008 10:05
von Christian81
Entweder nach XP wechseln (da geht es zumindest bei mir)
Oder webkit nicht mit kompilieren (wozu brauchst Du webkit?)
Oder mal ein cmd.exe-Ersatz probieren -> Siehe http://techbase.kde.org/Projects/KDE_on ... #Console_2

Re: Fehler beim Übersetzen: "Die eingegebene Zeile ist

Verfasst: 9. Juni 2008 18:12
von M.L.
Hallo,
Hat jemand vielleicht einen Tip wie ich das Problem umgehen kann?
Vielleicht geht es auch mit den Mitteln von Windows2000:
-relevante Teile der Befehle in " " setzen
-Befehle in eine .bat Datei schreiben und diese auf der Kommandozeile aufrufen

Re: Fehler beim Übersetzen: "Die eingegebene Zeile ist

Verfasst: 10. Juni 2008 09:12
von Bernhard Jung
Hi,
Christian81 hat geschrieben:Entweder nach XP wechseln (da geht es zumindest bei mir)
Da endet also der schöne Traum von der Plattformunabhängigkeit und die harte Realität holt uns wieder ein? Das kann ja wohl nicht sein. Windows 2000 wird doch von Qt unterstützt, da sollte es doch auch zum Laufen zu bekommen sein. Nach XP wechseln ist erst mal keine Option, da ich kein XP habe und mir auch keines kaufen will.
Christian81 hat geschrieben:Oder webkit nicht mit kompilieren (wozu brauchst Du webkit?)
Ich dachte eigentlich schon daran webkit zu verwenden. Es ist ja auch schließlich eines features mit denen bei QT 4.4 geworben wird. WebKit ist allerdings erst mal nicht wichtig für mein Programm und kann weggelassen werden. Später sollte es aber dann doch mal laufen.
Christian81 hat geschrieben:Oder mal ein cmd.exe-Ersatz probieren -> Siehe http://techbase.kde.org/Projects/KDE_on ... #Console_2
Console habe ich versucht, bringt mir aber die selbe Fehlermeldung.
M.L. hat geschrieben:-relevante Teile der Befehle in " " setzen
Ich habe keine Ahnung was Du damit meinst oder wie das gehen soll. Relevant wird bei dem Befehl wohl alles sein, sonst wäre es ja nicht drin. ich sehe mich auch außer Stande da zwischen relevant und nicht-relevant zu unterscheiden. Irgendwas in "" zu setzen wird wohl auch Probleme mit den Teilen des Befehls machen, in denen " schon verwendet wird.
M.L. hat geschrieben:-Befehle in eine .bat Datei schreiben und diese auf der Kommandozeile aufrufen
Auf die Idee kam ich auch schon, bringt aber nichts. Die Fehlermeldung ist die selbe.

Ginge es vielleicht dass ich Qt bei jemand anderem, auf einem anderen Rechner, unter XP übersetze und dann die Programme und dlls auf meinen Rechner mit Windows 2000 kopiere?

Gruß
Bernhard

Verfasst: 10. Juni 2008 10:09
von Christian81
Dein Problem hat absolut nichts mit Qt zu tun sondern damit das cmd.exe unter W2k keine so lange Zeichenkette akzeptiert. Dafür kann weder Trolltech noch wir irgendwas dafür. Die Idee von M.L. ist sinnlos - zu lang ist nunmal zu lang.
Mit msvc könnte es gehen da der Linker & Compiler auch Dateien als Argument-Input benutzen können. Ob dies allerdings qmake an dieser Stelle unterstützt / anwendet weiß ich nicht.

Re: Fehler beim Übersetzen: "Die eingegebene Zeile ist

Verfasst: 10. Juni 2008 10:13
von kitov
Vielleicht geht das damit http://www.mingw.org/msys.shtml :?

Verfasst: 10. Juni 2008 11:18
von RHBaum
Dein Problem hat absolut nichts mit Qt zu tun sondern damit das cmd.exe unter W2k keine so lange Zeichenkette akzeptiert.
Wenn der Installer oder qmake oder was auch immer der Verursacher der zulangen zeichenkette ist, dann hat trolltech schon was mit zu tun ...

Wuerde das bei uns auftreten, wuerde ich unserer Rechtsabteilung gute Karten einraeumen, Trolltech zu nem Fix oder was auch immer zu ueberreden :twisted:
Da steht expliziet das Windows 95,ME, NT unterteutzt wird ... und die laenge der eingabezeile unter NT ist keine unbekannte Komponente ...

Die Trolltechler ham schon mal nen experten schicken muessen, wegen ganz anderer problemchen :-)

Leider wird Nargaff keine kommerzielle version haben, und auch keine fette Rechtsabteilung im Nacken ....
Aber nen Bugreport waers allemal wert, wie gesagt unter der vorraussetzung, das wirklich das Webkit an den ellenlangen Include's dafuer verantwortlich ist.
Denk mal da wuerde es aber auch schnell nen fix geben fuer ...

Ciao ...

Verfasst: 12. Juni 2008 08:51
von Nargaff
kitov hat geschrieben:Vielleicht geht das damit http://www.mingw.org/msys.shtml :?
Danke fuer den Tipp, aber die Shell kommt mit den Pfadangaben in den Makedateien nicht zurecht, weil da \ benutzt wird.
Ich werde wohl erst mal ohne WebKit auskommen müssen.

Gruß
Bernhard

Verfasst: 12. Juni 2008 09:42
von Christian81
Nargaff hat geschrieben:
kitov hat geschrieben:aber die Shell kommt mit den Pfadangaben in den Makedateien nicht zurecht, weil da \ benutzt wird.
configure.exe muss natürlich neu aufgerufen werden - damit qmake die Makefiles neu erstellt.

Verfasst: 12. Juni 2008 20:47
von Nargaff
Christian81 hat geschrieben:configure.exe muss natürlich neu aufgerufen werden - damit qmake die Makefiles neu erstellt.
Unter bash hat qmake nach dem Aufruf von configure nicht funktioniert. Warum kann ich auch nicht sagen. Es kam keine Fehlermeldung. Der Vorgang ist einfach hängen geblieben und hat keine Ausgabe mehr gebracht. Jetzt wo ich so drüber nachdenke könnte es natürlich auch, sein das die Ausgabe einfach verschluckt wurde. Ich werde es demnächst vielleicht nochmal probieren und länger warten oder schauen ob der Prozessor unter Last ist. Ich kann mir aber auch nicht vorstellen, dass das unter Windows übersetzte qmake prüft ob es in der bash ausgeführt wird und dann einen anderen Separator für die Dateien benutzt. Mal sehen.

Gruß
Bernhard

Verfasst: 12. Juni 2008 21:04
von Christian81
configure.exe , nicht ./configure - nicht das du das falsche aufrufst

Verfasst: 14. Juni 2008 19:33
von Nargaff
So meine Damen und Herren,

ich habe es nun hinbekommen. Allerdings gab es einige Hürden zu überwinden, die ich mir ab z.T. selbst aufgestellt habe. Für alle Leute die das selbe Problem haben hier eine kurze Zusammenfassung.

Wenn man die Bash-Shell von MSYS verwendet klappt es erst mal. Ich habe dazu die Datei msysCORE-1.0.11...tar.bz2 runtergeladen. Wenn man die entpackt findet man eine bat-Datei. Wenn man die startet landet man in der Bash-Shell. Die Windowsfestplatten sind als Verzeichnise mit gleichem Namen unter root gemountet. Mit 'cd /c' kommt man zum Beispiel auf C:. Wie oben schon erwähnt wurde muss man configure unbedingt noch mal aufrufen, das sonst die Pfadangaben \ enthalten, was fuer die Bash unverständlich ist. Danach einfach make aufrufen. Aber Obacht! MSYS liefert ein eigenes make mit, das allerdings bei mir irgendwann beim Compilieren von WebKit mit einer Fehlermeldung ausgestiegen ist. Mit dem MinGW make ging es dann. Was auch nicht funktioneren wollte war WebKit mit dem MinGW g++ 4 zu übersetzen.

So dann man danke für die Hilfe vom Forum.
Gruß
Bernhard