Code: Select all
emerge -e system
emerge -e system
emerge -e world
emerge -e world
Code: Select all
emerge -e system
emerge -e system
emerge -e world
emerge -e world


yes, but since you rebuild everything, some things might be rebuilt before the system elements due to dependencies I guess, and then they'd have been built by a toolset that was crosscompiled, which might still be using some incorrect libraries. you should always build with a native toolchain, and the only solid way of guaranteeing that in gentoo using portage is running emerge -e system twice, then world.Zarhan wrote:Why a simple "system, then world" is not enough, ie. doesn't it build the new toolchain (with emerge -e system) and then everything (including the toolchain, since system is a subset of world) with the new toolchain?
Well, some other people think, that this is not usefull at all. Have a look at this thread on gentoo-user list: http://www.mail-archive.com/gentoo-user ... 36343.html. I'm searching for more information about this topic, too. Perhaps we get somewhere the ultimate answer on this.Kosa wrote:Sometimes i can see someone recommending this after changing CHOST, CFLAGS etc.:Does it have some advantages? Or is it just great waste of time as i see it? I'm installing stage3 fresh server install and as the first thing i had changed -mtune=i686 to -march=pentium4, executed emerge -e system && emerge -e world and went doing more interesting thingsCode: Select all
emerge -e system emerge -e system emerge -e world emerge -e world
What about the "emerge -e system" stated in gcc upgrade guide?:Zarhan wrote:That seems to clear it up quite well; Ie. an emerge -e world is enough after a gcc upgrade if you want to bother. No need to build anything twice (or more times). GCC itself compiles itself with itself (in a single emerge).
Code: Select all
Code Listing 2.1: Upgrading GCC
# emerge -uav gcc
(Please substitute "i686-pc-linux-gnu-3.4.5" with the GCC
version and CHOST settings you've upgraded to:)
# gcc-config i686-pc-linux-gnu-3.4.5
# source /etc/profile
(Rebuilding libtool)
# emerge --oneshot -av libtool
Now let's rebuild toolchain and then world so we will make use of the new compiler.
Code Listing 2.2: Rebuilding system
# emerge -eav system
# emerge -eav worldThe mailing list postings make the point that since everything is dynamically linked anyway, even rebuilding toolchain (which basically means glibc) is not necessary before emerge -e world.B.marc wrote:What about the "emerge -e system" stated in gcc upgrade guide?:Zarhan wrote:That seems to clear it up quite well; Ie. an emerge -e world is enough after a gcc upgrade if you want to bother. No need to build anything twice (or more times). GCC itself compiles itself with itself (in a single emerge).
Code: Select all
emerge -e world && emerge -e world && emerge depcleanSo looking at the bootstrap skript will give more answers how to really rebuild your toolchain (I will, when I have time). So never again two times rebuild system and world...FAQ wrote:Bootstrapping means building the toolchain (the C library and compiler) for your system after which you install all core system packages. To bootstrap the system, perform a stage3 installation. Before you start the chapter on Configuring the Kernel, modify the bootstrap.sh script to suit your needs and then run it:
Code Listing 3.7: Bootstrapping the system
# cd /usr/portage/scripts
# vi bootstrap.sh
# ./bootstrap.sh
Next, rebuild all core system packages with the newly built toolchain. We need to rebuild them since the stage3 tarball already offers them:
Code Listing 3.8: Rebuilding the core system packages
# emerge -e system
Now you can continue with Configuring the Kernel. You can not use the prebuilt GRP packages anymore though.