# sys-libs/glibc-2.5 Update

## Frank99

Hallo,

vor kurzem wurde ja sys-libs/glibc-2.5 "Stable".

Kann ich es einfach gefahrlos updaten?

Bzw. erfordert es das ich anschließend ein emerge system && emerge word durchführen muss?

Bye,

Frank

----------

## Ampheus

Hab das Update einfach gemacht. Gab bis jetzt keinerlei Probleme und hab auch bisher nichts derartiges gelesen.

Es sollte also gefahrlos möglich sein.

----------

## Keruskerfuerst

Danach ist es aber nötig, das gesamte System neu zu übersetzen.

----------

## smg

 *Keruskerfuerst wrote:*   

> Danach ist es aber nötig, das gesamte System neu zu übersetzen.

 

Warum? Glaub' ich dir nicht, auch wenn du schon ~1000 posts hast  :Razz: 

----------

## Finswimmer

 *Keruskerfuerst wrote:*   

> Danach ist es aber nötig, das gesamte System neu zu übersetzen.

 

Achwas.

Ein emerge -e system ist evtl nötig.

Alles andere ist übertrieben.

Theoretisch sollte die toolchain schon reichen...

Tobi

----------

## Keruskerfuerst

Und was soll ich jetzt auf diese "klugen" Kommentare noch antworten?

----------

## smg

 *Keruskerfuerst wrote:*   

> Und was soll ich jetzt auf diese "klugen" Kommentare noch antworten?

 

Na! Liegt doch auf der Hand. Verzähl mir mal wieso ich mein System neu kompilieren sollte wenn ich auf glibc 2.5 update?

----------

## Keruskerfuerst

http://www.gnu.org/software/libc/

----------

## Finswimmer

Nicht streiten, Jungs...

Ein komplettes emerge -e system oder gar world, sollte man, soweit ich weiß, machen, wenn es ein Major Update ist...

Zumal, da es die glibc ist, kann man gcc neu kompilieren, dann hat der wenigstens schon alle Neurungen drin...

Tobi

----------

## Polynomial-C

Hi,

also ich habe schon einige Systeme bei mir auf glibc-2.5 umgestellt, als diese Version noch ~[arch] war. Und ich habe weder ein emerge -e system noch emerge -e world danach gemacht und die Kisten laufen trotzdem ohne erkennbare Probleme. Auch bei späteren Updates der restlichen installierten Pakete habe ich nie ein Problem bemerkt, welches auf eine defekte toolchain schließen ließ.

Wer auf Nummer sicher gehen will, kann ruhig ein emerge -e system/world machen, aber wirklich notwendig ist es nach meinen Beobachtungen beim Umstieg von glibc-2.4 auf glibc-2.5 nicht.

Grüße

Poly-C

----------

## psyqil

 *Keruskerfuerst wrote:*   

> http://www.gnu.org/software/libc/

 Wie überzeugend. Meinst Du eine bestimmte Stelle, die sich nicht auf Version 2.1 bezieht?

Ich halte den Brunthaler dagegen: *Quote:*   

> Myth 2: We need to recompile everything after a glibc update 
> 
> Many people consider updating the glibc to have a similar effect as updating the GCC: As the new glibc may have updated header files and may operate on different internal data structures, all applications using those header files (= virtually all applications) must be rebuilt. 
> 
>  Although this concern may be correct for applications which used some "experimental features" of the old glibc, such changes will effect only very few applications. 
> ...

 

----------

## smg

 *Keruskerfuerst wrote:*   

> http://www.gnu.org/software/libc/

 

Danke. Werde mal sehen was da zu Version 2.5 geschrieben steht.

----------

## hoschi

Bei einem Update der GLIBC (der C Library) muss man in der Regel nicht, man kann aber das System und dann anschliesend World neu kompilieren.

Bei einem Majorupdate des GCC und damit der LIBSTDC++ (der C++ Library) muss man System und World neu kompilieren, obwohl der GCC und LIBSTDC++ die Programmiersprache C++ schon seit Version 3.4 nahezu vollstaendig umsetzen, allerdings ist C++ im Vergleich zu C noch recht "pubertaer".

Ein ueberarbeiter C++ Standard mit vielen neu Features ist fuer diese Dekade noch geplant, viele Features auf Boost bzw. TR1 und TR2 werden einfliessen. C++ bewegt sich also noch, und wird sich in dieser Dekade nochmal erheblich veraendern.

Programmiersprachen sind wie Programme, staendig wartet man auf die neue Version  :Very Happy: 

----------

## Finswimmer

Dekade = 10 Jahre?

Tobi

----------

## smg

 *Finswimmer wrote:*   

> Dekade = 10 Jahre?
> 
> Tobi

 

Präzise. 

 *Quote:*   

> ein Zeitraum von zehn Tagen, Wochen oder Jahren (Jahrzehnt)

 

P.S.: 1 3 3 7 !

----------

## amne

Man muss sein System nicht neu kompilieren, es sei denn es steht in der Doku. Ich lasse mich gerne eines besseren belehren, aber mir ist weder eine Gentoo- noch Upstreamdoku bekannt, die das sagt.

----------

## Keruskerfuerst

Ich habe schon öfters die Erfahrung gemacht, daß bei Updates, die die Betriebssystembasis betreffen, ein komplettes Übersetzen des gesamtes System nötig gewesen ist. 

Beispiel: Update der Linuxheaders (erst kürzlich, Architektur Amd64); führte zum Update von Glibc; danach ein emerge -e world.

----------

## amne

 *Keruskerfuerst wrote:*   

> Ich habe schon öfters die Erfahrung gemacht, daß bei Updates, die die Betriebssystembasis betreffen, ein komplettes Übersetzen des gesamtes System nötig gewesen ist. 
> 
> Beispiel: Update der Linuxheaders (erst kürzlich, Architektur Amd64); führte zum Update von Glibc; danach ein emerge -e world.

 

Nochmal die Frage: Warum hast du das gemacht? Steht das irgendwo? Wenn ja, wo?

----------

## Fabiolla

Hallo

 *Quote:*   

> 
> 
> Man muss sein System nicht neu kompilieren, es sei denn es steht in der Doku. Ich lasse mich gerne eines besseren belehren, aber mir ist weder eine Gentoo- noch Upstreamdoku bekannt, die das sagt.
> 
> 

 

Aus http://www.gentoo.org/doc/de/gcc-upgrading.xml

 *Quote:*   

> 
> 
> Um sicherzugehen, dass das System in einem gesunden Zustand ist, müssen Sie die Toolchain und danach world neu bauen um den neuen Compiler zu nutzen.
> 
> Befehlsauflistung 2.2: System neu erstellen
> ...

 

lg

----------

## think4urs11

 *Fabiolla wrote:*   

> Um sicherzugehen, dass das System in einem gesunden Zustand ist, müssen Sie die Toolchain und danach world neu bauen um den neuen Compiler zu nutzen.

 

es geht hier aber um glibc und nicht um gcc

----------

## Carlo

 *amne wrote:*   

>  *Keruskerfuerst wrote:*   Ich habe schon öfters die Erfahrung gemacht, daß bei Updates, die die Betriebssystembasis betreffen, ein komplettes Übersetzen des gesamtes System nötig gewesen ist. 
> 
> Beispiel: Update der Linuxheaders (erst kürzlich, Architektur Amd64); führte zum Update von Glibc; danach ein emerge -e world. 
> 
> Nochmal die Frage: Warum hast du das gemacht? Steht das irgendwo? Wenn ja, wo?

 

Weil er's nicht besser weiß. Eine Rekompilation wg. des glibc-Updates ist komplett überflüssig.

----------

## Klaus Meier

Also die einzige Sache, die das komplette Übersetzen des System erfordert hat, war der Wechsel vom gcc 3 auf den gcc 4. Da hatten wir ja auch hunderte von Fehlermeldungen von Leuten, die es nicht gemacht haben.

Was da jetzt genau die linux-headers bewirken, hab ich mich auch schon öfters mal gefragt. Die melden ja am Ende der Installation, das glibc davon abhängt. War mir nie ganz klar, ob man jetzt die glibc noch mal neu übersetzen muß. Und die Kernelquellen haben diese Header ja auch als Abhängigkeit. Aber irgendwelche negativen Auswirkungen hab ich noch nicht erlebt, wenn ich da gar nichts gemacht habe.

Es schadet nicht, ab und an mal ein revdep-rebuild zu machen. Aber ansonsten, weder bei den linux-headers noch bei der glibc muß man sein System neu übersetzen.

----------

## slick

 *Klaus Meier wrote:*   

> Was da jetzt genau die linux-headers bewirken, hab ich mich auch schon öfters mal gefragt. Die melden ja am Ende der Installation, das glibc davon abhängt. War mir nie ganz klar, ob man jetzt die glibc noch mal neu übersetzen muß. 

 

AFAIK ist das so das die Header zwar durchaus neue/bessere/... Funktionen mitbringen können, allerdings fliessen diese erst ins System ein wenn sie durch die Rekompilierung von glibc "übernommen" werden. Übersetzt man glibc nicht neu bleiben nur diese Neuerungen außen vor, d.h. für das laufende System ist das erstmal vollkommen egal, d.h geht nichts kaputt dadurch.

----------

## amne

 *slick wrote:*   

> AFAIK ist das so das die Header zwar durchaus neue/bessere/... Funktionen mitbringen können, allerdings fliessen diese erst ins System ein wenn sie durch die Rekompilierung von glibc "übernommen" werden. Übersetzt man glibc nicht neu bleiben nur diese Neuerungen außen vor, d.h. für das laufende System ist das erstmal vollkommen egal, d.h geht nichts kaputt dadurch.

 

Stimmt (soweit ich weiss), aber ist eben kein zwingender Grund nach jedem Upgrade der linux-header oder glibc das gesamte System neu zu übersetzen.

----------

## hoschi

 *Finswimmer wrote:*   

> Dekade = 10 Jahre?
> 
> Tobi

 

Ja, das naechste Release traegt die Versionsnummer 0X, da heisst es muss noch vor 2010 erscheinen.

----------

## hoschi

 *Think4UrS11 wrote:*   

>  *Fabiolla wrote:*   Um sicherzugehen, dass das System in einem gesunden Zustand ist, müssen Sie die Toolchain und danach world neu bauen um den neuen Compiler zu nutzen. 
> 
> es geht hier aber um glibc und nicht um gcc

 

Der GCC beinhaltet die LIBSTDC++ (die C++ Library), sollte man in dem Zusammenhang nicht vergessen (ja, ich erwaehne es jetzt schon wieder).

----------

## Dragonix

Hi,

hab jetzt 2,5 tage compilern lassen, ein ganze system (darunter auch einmal world =)); dazu hab ich distcc verwendet.

Leider stell ich jetzt fest, dass der Server für den compilert wurde, glibc2.5 drauf hatte und der rechner, der ihm geholfen hat 2.4.

Ist das jetzt schlimm? Möchte ungern nochmal so viel compilern... ATM funktioniert auch eigentlich alles...

----------

## amne

Sofern du auf allen Systemen die gleiche Version von gcc verwendet hast sollte das völlig egal sein welche Glibc installiert war. Sollte auf dem einen Rechner allerdings KDE und dem anderen Gnome installiert sein würde ich dir dringend raten, alles sicherheitshalber nochmal zu kompilieren. Am Besten doppelt.  :Razz: 

----------

## Dragonix

Auf dem einen war nix. Und auf dem anderen KDE. Aber ich glaub das war nur ein Joke   :Shocked: 

----------

## amne

 *Dragonix wrote:*   

> Auf dem einen war nix. Und auf dem anderen KDE. Aber ich glaub das war nur ein Joke  

 

Bevor wirklich noch jemand dem "Ratschlag" folgt: Ja.  :Very Happy: 

----------

## dertobi123

 *amne wrote:*   

>  *Dragonix wrote:*   Auf dem einen war nix. Und auf dem anderen KDE. Aber ich glaub das war nur ein Joke   
> 
> Bevor wirklich noch jemand dem "Ratschlag" folgt: Ja. 

 

Ein Admin hat keine Witze zu machen.   :Cool: 

----------

## amne

Weils mir gerade einfällt: Nach dem Update sollte man um sicher zu gehen Serverdienste (also vor allem sshd) neu starten, zumindest bei älteren Updates gingen diese bei einigen wenigen Anwendern nach ein paar Tagen k.o., was zumindest bei einem 3000 km entferntem Rechner, der in einem durch Selbstschussanlagen gesicherten ehemaligen Atombunker mit einem feuerspeienden Wachdrachen, der vor der Panzertüre steht, eher lästig sein kann.

----------

## think4urs11

 *amne wrote:*   

> 3000 km entferntem Rechner, der in einem durch Selbstschussanlagen gesicherten ehemaligen Atombunker mit einem feuerspeienden Wachdrachen, der vor der Panzertüre steht, eher lästig

 

Wozu gibt es den Junioradmins denen man die Drecksarbeit übertragen kann?   :Twisted Evil: 

----------

## DogFacedGod

Ich häng mich mal hier mit dran:

Ich installiere grade neu.

Das Basissystem läuft soweit, also hab ich emerge --sync gemacht und wollte nun die entsprechenden Pakete updaten.

glibc 2.3.6-r4 war im Stagearchiv, jetzt soll 2.5 installiert werden und es passiert folgendes:

 *Quote:*   

> 
> 
> ...
> 
> CPP='i386-pc-linux-gnu-gcc -E -x c-header'  /var/tmp/portage/sys-libs/glibc-2.5/work/build-default-i386-pc-linux-gnu-linuxthreads/elf/ld-linux.so.2 --library-path /var/tmp/portage/sys-libs/glibc-2.5/work/build-default-i386-pc-linux-gnu-linuxthreads:
> ...

 

Wat nu?

----------

## Treborius

 *Quote:*   

> 
> 
> Segmentation fault
> 
> 

 

da kann dir wohl keiner helfen, weder compiler noch linker error, sondern was ganz komisches

(im bereich builden)

```

emerge --resume --skipfirst

```

und dann nochmal?

----------

