GCC Konfiguration

Hallo :)

Bin gerade dabei mich ein bischen in Linux einzuarbeiten und hab noch kein sonderliches Vorwissen. Jedenfalls bin ich nun dabei den Compiler zu konfigurieren und es gibt die Option "-pipe".
Was ich der Dokumentation entnehmen konnte ist, dass in diesem Fall "Pipes" statt temporären Dateien benutzt werden.

In der Gentoo Dokumentation steht drin, dass ich wenn ich /var auf eine extra Partition lege, die relativ klein ist, dann sollte ich in GCC einen anderen Pfad für die temporären Dateien angeben. Vorher war er "/var/tmp" und jetzt ist er "/tmp" (Woür gibts eigentlich 2x Temp?).

Jetzt stell ich mir die Frage, wohin diese Pipes das alles speichern, in den Ram ja wohl kaum, aber Dateien sind es anscheinend auch nicht.

Hoffe ich konnte meine Frage verständlich schildern. Ist mir so wichtig, da ich das System auf einem alten Computer installiere und daher nur relativ begrenzten Speicherplatz zur verfügung hab.

Gruß, xblax
 
Bei Pipes wird zB die Ausgabe von einem Program die Eingabe eines anderen. Somit bleibt an sich alles im Speicher, bzw wird erst später ausgegeben...

Dateien in /tmp können zwischen zwei Programmaufrufen gelöscht werden, wohingegen /var/tmp/ sogar über reboots erhalten bleibt... (vgl. Filesystem Hierarchy Standard)
 
Das heißt wenn ich Pipes benutze fängt er für den Fall, dass der Speicher voll ist, an die Daten auf die Swap Partition auszulagern, richtig?

Vielen Dank schonal für deine Antwort *thumbsup*
Der Link ist übrigens auch Klasse für Leute die mit Linux anfangen und das System auch verstehen wollen!
 
Bis zu einem gewissen Maße landet es im Speicher.
"ulimit -p" gibt die 512 Byte-Blöcke an. Bei 8 sind es also 4KB.
Wenn also mehr als 4KB ausgegeben wird, blockiert das ausgebende Programm und geht erst weiter, wenn wieder Speicher frei wird (also das andere Programm etwas gelesen hat).
 
Hab nochmal ne Frage zur GCC Konfiguration.

Da steht drin
CHOST="i386-px-linux-gnu"
und in der Gentoo Doku steht, dass da in der Regel schon das Richtige steht, aber müsste da nicht i686 stehen? Ich installier zumindest die i686 Version von Gentoo und die Programme werden auch auf i686 optimiert ?(

Hier nochmal der Auszug aus der Doku:
Die CHOST Variable deklariert den Zielerstellungs-Host für Ihr System. Diese Variable sollte schon auf den korrekten Wert gesetzt sein. Verändern Sie diese nicht, denn es kann Ihr System immens beschädigen. Wenn die CHOST Variable Ihnen falsch zu sein scheint, verwenden Sie unter Umständen ein falsches stage3 Archiv.
Ist auf jeden Fall das richtige Archiv (x86)
 
Wenn du auf eine bestimmte Architektur optimieren willst, solltest du CFLAGS dafür nutzen und dort '-march=<cpu-typ>' eintragen, wobei '<cpu-typ>' hier einer der folgenden Werte sein kann: generic, i386, i486, i586, pentium, pentium-mmx, pentiumpro, i686, pentium2, pentium3, pentium-m, pentium4, pentium4m, prescott, nocona, k6, k6-2, k6-3, athlon, athlon-tbird, k8, opteron, athlon64, athlon-fx, winchip-c6, winchip2, c3 oder c3-2.
 
Ja das weiß ich schon ;)
Mir gings auch um CHOST und nicht um CFLAGS.

Hab jetzt aber rausgefunden woran das liegt. Es gibt auch ein i686 Stage 3 Archiv und nicht nur x68 :rolleyes:
 
Zurück
Oben