[gelöst] Die eingegebene Zeile ist zu lang

Verschiedenes zu Qt
Antworten
Nargaff
Beiträge: 9
Registriert: 1. Dezember 2007 18:30

[gelöst] Die eingegebene Zeile ist zu lang

Beitrag 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
Zuletzt geändert von Nargaff am 14. Juni 2008 19:34, insgesamt 1-mal geändert.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag 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
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
M.L.
Beiträge: 9
Registriert: 22. Februar 2008 10:29

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

Beitrag 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
Bernhard Jung
Beiträge: 6
Registriert: 9. November 2006 19:52

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

Beitrag 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
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag 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.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
kitov
Beiträge: 36
Registriert: 29. November 2006 12:24

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

Beitrag von kitov »

Vielleicht geht das damit http://www.mingw.org/msys.shtml :?
RHBaum
Beiträge: 1436
Registriert: 17. Juni 2005 09:58

Beitrag 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 ...
Nargaff
Beiträge: 9
Registriert: 1. Dezember 2007 18:30

Beitrag 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
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag 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.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Nargaff
Beiträge: 9
Registriert: 1. Dezember 2007 18:30

Beitrag 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
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

configure.exe , nicht ./configure - nicht das du das falsche aufrufst
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Nargaff
Beiträge: 9
Registriert: 1. Dezember 2007 18:30

Beitrag 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
Antworten