Suche eine portable Version des gcc für Windows
-
Da läst sich sicher was basteln, wenn nichts verfügbar ist.
Ein Stichwort: relativer und absoluter Pfad in Batch-Dateien oder Scripten -
da sollte schon einiges automatisch gehen.MfG f.-th.
-
Der MinGW ist wohl zur Zeit nicht mehr verfügbar.
Aber ich hab da noch die alte DEV-IDE gefunden habs jetzt nicht getestet -
meist ist da ein nicht ganz junger MinGW dabei.
http://sourceforge.net/project/showfiles.php?group_id=190331&package_id=223332MfG f.-th.
-
Code::Blocks geht auch auf USB:
http://www.codeblocks.org/docs/main_codeblocks_dech1.htmlAbschnitt 1.10.4
MfG f.-th.
-
Hab jetzt auch den gcc 4.3.0 mit relativen Pfaden unter dem
SciTE grob getestet.
Wenn das einmal eingerichtet ist - ein Klick auf eine Batch
auf dem Stick und das Ganze inclusiv der Pfade ist bereit.MfG f.-th.
-
f.-th. schrieb:
Hab jetzt auch den gcc 4.3.0 mit relativen Pfaden unter dem
SciTE grob getestet.
Wenn das einmal eingerichtet ist - ein Klick auf eine Batch
auf dem Stick und das Ganze inclusiv der Pfade ist bereit.MfG f.-th.
Sei doch so lieb und zip das ganze und lade es bei sourceforge.net hoch
-
Den SciTE 1.77 findet ihr im Netz
Auf dem Stick z.B. in SciTE ablegen
Bei dem die Datei cpp.properties folgende Zeilen ändern:ccopts=-pedantic -Os #cc=g++ $(ccopts) -c $(FileNameExt) -o $(FileName).o cc=g++ $(ccopts) -o $(FileName) $(FileNameExt) #ccc=gcc $(ccopts) -c $(FileNameExt) -o $(FileName).o ccc=gcc $(ccopts) -o $(FileName) $(FileNameExt) make.command=make command.compile.*.c=$(ccc) -std=c99 command.build.*.c=$(make.command) command.go.*.c=./$(FileName) # To make the Go command both compile (if needed) and execute, use this setting: #command.go.needs.*.c=gcc $(ccopts) -std=c99 $(FileNameExt) -o $(FileName)
Es sind nur 2 Zeilen. Die anderen sind nur zur Orientierung.
Den gcc 4.3.x herunterladen und auf dem Stick z.B. ins
Verzeichnis gcc430 installierenAnschließend eine Batch-Datei im "Basisverzeichnis" des Sticks erstellen mit
folgenden Zeilen:SET PATH=.\mingw\include;.\gcc430\lib\gcc\mingw32\4.3.0\include\c++;.\gcc430\bin;D:\gcc430\lib;.\gcc430\lib\gcc\mingw32\4.3.0;%PATH% \SciTE\WsciTE\SciTE.EXE
Und das Ganze starten. Das ist es fast
Weil, wenn ich das richtig verstanden hab, die Header nicht mehr "alle" beim
gcc 4.3.x beigepackt werden hab ich noch die aktuellste Version die ich im
Netz finden konnte unter MinGW installiert.
Die Headergeschichte ist nur bei Win... relevant - bei Linux gibt es passende
Packete.Bei den neueren Windows kann ein Script die Funktion der Batch ersetzen.
Wenn da jemand mehr Durchblick hat, ergänzen
Das ist sicher noch zu optimieren.Ach ja, hab es noch nicht getestet, der Code::Blocks soll schon für den
gcc 4.3.x vorbereitet sein.MfG f.-th.
-
f.-th. schrieb:
Die Headergeschichte ist nur bei Win... relevant - bei Linux gibt es passende
Packete.meinst du die Geschichte mit den optimierten impliziten #includes, bei denen der 4.3 in manchen Programmen strlen() nicht mehr kennt, wo es mit 4.1 noch funktioniert hat? würde mich interessieren, wie man das hinkriegt, ohne die fraglichen #includes in älterem Code abzuändern.
-
ich habe das Problem nämlich jetzt schon bei zwei Programmen aus der 4.1-Zeit, und zwar unter llnux
-
Bin jetzt nicht so firm wie andere hier aus dem Forum.
Wenn ich das Ganze mit den Headern richtig verstanden hab,
wurden ab einer bestimmten Version aus rechtlichen Vorbehalten
die bis dahin verwendeten C-Header ( mit .h ) nicht mehr mit
ins das GCC-Packet gepackt. Abhilfe nahmen einige Programmierer
dann mit einem alternativen Header-Packet unter Linux, welches
dummerweise ein paar Jahre älter ist ( ? ). Unter Windows gibt
es ein solches Packet meines Wissens aber gar nicht.Es soll aber andere Projekte geben, die den gcc 4.3 nutzen und
die mit entsprechenden Headern im Packet im Netz unter Linux
zur Verfügung stehen sollen. Müsste da aber selbst erst suchen.Will hoffen das ich das jetzt richtig verstanden hab. Oder
besser fürs Programieren wär natürlich anders.MfG f.-th.
-
So noch mal ein wenig nachgesehen:
http://gcc.gnu.org/gcc-4.3/porting_to.html
und
http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt01ch03s02.htmlHab schon mal gesucht aber die Seiten nicht gefunden sondern nur
die Klimmzüge anderer UserIch hatte einen solchen Schnitt
nicht erwartet, deshalb war ich auch für diese Klimm... empfänglich.Werde mich damit wohl beschäftigen.
MfG f.-th.
-
ich frage mich eben, ob es eine bessere Lösung gibt, als gemäß den "porting to 4.3"-Empfehlungen "if missing ... then include this header" Prä-4.3 Code abzuändern. Vielleicht einen Compiler switch oder irgendein Trick? Ich habe wirklich wenig Lust, sämtlichen fraglichen Prä-4.3-Code auf implizite #includes abzuklopfen, die bei 4.3 nicht mehr automatisch mit-includiert werden, und ggf. abzuändern.