Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
GCC 3.4.4 Unauthorized Migration Guide for i686
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks
View previous topic :: View next topic  
Author Message
Bob P
Advocate
Advocate


Joined: 20 Oct 2004
Posts: 3355
Location: Jackass! Development Labs

PostPosted: Mon Dec 19, 2005 2:52 am    Post subject: GCC 3.4.4 Unauthorized Migration Guide for i686 Reply with quote

Bob P's Unauthorized GCC 3.4.4 Migration Guide for i686

Far too many people have been pulling their hair out trying to upgrade their i686 systems from the GCC 3.3.5 compiler included in the standard x86 tarballs to the new "stable" branch GCC 3.4.4 based toolkit.

I thought I'd offer my advice on how to effectively perform the migration on existing i686 systems. This method is based upon Rob Moss method of redundantly rebuilding the system and world files, and is an abbreviated version of my Stage 1/3 Installation Guide.

Believe it or not, the whole prospect of a safe and error-free GCC Migration on i686 is not as complicated as you might think, but it will take some time...


Starting with a functional Gentoo installation using GCC 3.3.5 on a 686-CHOST based x86 system, just do this:

1. Emerge Updated Toolkit Components:

Code:
# emerge gcc-config glibc binutils libstdc++-v3 gcc


2. Update /etc/make.conf

If you need to make any changes to the contents of make.conf to use flags that are supported by the new version of GCC but not by the old version of GCC, do it now. (Pentium-M users, this is your chance to change the march specification to march=pentium-m).

3. Select the New Default C Compiler

Change the default compiler to gcc 3.4.4.

Code:
# gcc-config i686-pc-linux-gnu-3.4.4


4. Update the System Environment

Code:
# source /etc/profile


5. Rebuild the System Toolkit and World Files

All of these steps are necessary. DO NOT skip any of them!

Code:
# emerge glibc binutils libstdc++-v3 gcc portage && emerge -e system && emerge -e system && emerge -e world && emerge -e world


6. Prune the Old GCC Compiler

Code:
emerge -P gcc



This approach will accomplish a number of things for you:

a. It will take longer than the "official" "safe" method.
b. Your toolkit will be completely and throughly built by itself.
c. All of your World files will be thoroughly rebuilt by the new toolkit.
d. All of your World files will be compiled against world libraries that were completely rebuilt by the new toolkit.

By cutting out any of the steps above (specifically the apparently redundant an unnecessary repeated emerge commands) you will circumvent a complete, thorough and effective system and world rebuild from being performed. Don't do it! Cutting out any of the seemingly unnecessary steps could subject you to bizarre problems caused by the retention of static libraries that are difficult to track down.

This update will take a LONG time to complete, especially on older hardware. Plan on giving your computer alot of time to complete the rebuild step. Have Fun!


At the time that I first post this, its an experimental/untested installation method. If you find any mistakes, please send me a PM so that I can update any typos that might have occurred. This Guide is otherwise UNSUPPORTED.

Thanks!

_________________
.
Stage 1/3 | Jackass! | Rockhopper! | Thanks | Google Sucks


Last edited by Bob P on Sat Feb 18, 2006 3:26 pm; edited 1 time in total
Back to top
View user's profile Send private message
Bob P
Advocate
Advocate


Joined: 20 Oct 2004
Posts: 3355
Location: Jackass! Development Labs

PostPosted: Mon Dec 19, 2005 2:56 am    Post subject: Reply with quote

For those of you who want to do this with a minimal amount of seat time, some of the steps can be consolidated:

1. Emerge Updated Toolkit Components:

Code:
# emerge gcc-config glibc binutils libstdc++-v3 gcc


2. Update /etc/make.conf

3. Rebuild

Code:
# gcc-config i686-pc-linux-gnu-3.4.4 && source /etc/profile && emerge glibc binutils libstdc++-v3 gcc portage && emerge -e system && emerge -e system && emerge -e world && emerge -e world && emerge -P gcc

_________________
.
Stage 1/3 | Jackass! | Rockhopper! | Thanks | Google Sucks
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum