Gentoo Archives: gentoo-user

From: Richard Fish <bigfish@××××××××××.org>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Upgrade + gcc dilemma
Date: Mon, 09 Jan 2006 02:37:36
Message-Id: 7573e9640601081828x35e7b874m81eafbc13d45298a@mail.gmail.com
In Reply to: Re: [gentoo-user] Upgrade + gcc dilemma by Bob Sanders
1 On 1/8/06, Bob Sanders <rmsand@××××××××××.net> wrote:
2 > Simply put you can't. The base system - emerge -e system, has to be done once and that
3 > gets everything in the system profile built with gcc 3.4. However, both gcc and glibc need to
4 > be rebuilt again after the first pass, and anything using glibc needs to be rebuilt after glibc
5 > has been recompiled, thus the - emerge -e world.
6 >
7 > Think about it this way - things like binutils and linux-headers are used with gcc-3.4 and the old
8 > glibc to rebuild glibc. But the new glibc is different than the old glibc, thus bin-utils is working
9 > with pointers to places in glibc that may not exist any more.
10
11 This is false, you do not understand how shared libraries and the
12 dynamic linker work. There is no advantage at all to rebuilding
13 everything due to a minor change in glibc versions, or even if you
14 rebuild glibc with a different version of the toolchain.
15
16 Gcc upgrades are bit more tricky, only because the ABI might change.
17 Thus it is _sometimes_ necessary to carefully rebuild everything to
18 keep your system working.
19
20 For this gcc upgrade, rebuilding all of world or system is not
21 necessary. It is only necessary to rebuild C++ applications and
22 libraries because the C++ ABI and libstdc++ library versions
23 havechanged. You might _want_ to rebuild everything to take advantage
24 of any new optimizations that are available, but the revdep-rebuild
25 method is all that is needed to keep your system working.
26
27 So my suggested order for this would be:
28
29 # emerge -uav gcc
30 # gcc-config i686-pc-linux-gnu-3.4.4
31 # source /etc/profile
32 # emerge --oneshot -av libtool
33 # revdep-rebuild --library libstdc++.so.5
34 # emerge -Duv world
35
36 Watch out for a portage or python update though...and don't forget the
37 python-updater if there is a python update in there.
38
39 -Richard
40
41 --
42 gentoo-user@g.o mailing list

Replies

Subject Author
Re: [gentoo-user] Upgrade + gcc dilemma Bryce Verdier <btv@××××××.edu>
Re: [gentoo-user] Upgrade + gcc dilemma "Anthony E. Caudel" <acaudel@×××××.com>