1 |
Wheehey. |
2 |
time for the preliminary upgrade instructions for all those adventurous |
3 |
souls that dont want to break everything but only something :) |
4 |
|
5 |
|
6 |
Overview: |
7 |
how to update from gcc 2.95.3 to 3.2 without breaking too much |
8 |
|
9 |
1) build gcc / glibc /binutils / gettext packages to backup with |
10 |
emerge --buildpkg gcc glibc gettext binutils (all in gcc 2.95.3) |
11 |
|
12 |
Move theese aside in a place tagged as gcc 2.95.3 . |
13 |
|
14 |
|
15 |
2) build an replacement gcc systems |
16 |
change the profile to default-x86-2.0 |
17 |
|
18 |
export USE="-* build" |
19 |
emerge --buildpkg gcc |
20 |
emerge --buildpkg binutils gettext texinfo glibc |
21 |
unset USE |
22 |
|
23 |
This will now replace your gcc with one without c++ and other such |
24 |
things.. "oops" gcc is now gcc 3.2.. thats good. |
25 |
|
26 |
Now, We remove all traces of gcc, *shudder* |
27 |
emerge -C gcc |
28 |
and install the binary again: |
29 |
emerge --usepkg gcc |
30 |
|
31 |
now, next step... we want a fully working and competent gcc, glibc and |
32 |
other things: |
33 |
|
34 |
emerge --buildpkg gcc |
35 |
emerge --buildpkg binutils gettext texinfo glibc |
36 |
|
37 |
Lovely, a complete gcc 3.2 system installed! and not a trace of gcc |
38 |
2.95.3's libstdc++ ... This is the time when you go "oops" and whine a |
39 |
lot. |
40 |
|
41 |
or.. is it? |
42 |
|
43 |
move aside your gcc 3.2 complete binaries, copy in gcc 2.95.3 ones |
44 |
emerge --usepkg =gcc-2.95.3-r7 (whatever version it was you had |
45 |
installed) |
46 |
emerge --usepkg gcc |
47 |
|
48 |
Now, you've restored gcc 2.95.3's paths and data, and overwritten the |
49 |
gcc, g++ and others with those of gcc 3.2 |
50 |
|
51 |
check with /usr/bin/gcc -v |
52 |
it reports gcc 3.2 for me |
53 |
|
54 |
|
55 |
Now, edit /etc/env.d/05gcc |
56 |
add : |
57 |
LDPATH=/usr/lib/gcc-lib/i686-pc-linux-gnu/2.95.3 |
58 |
|
59 |
then run "env-update" |
60 |
|
61 |
|
62 |
now your old c++ code will work again... everything is normal, until ... |
63 |
soon.. |
64 |
|
65 |
|
66 |
This is as far as I've come today, my system works, c++ code works, |
67 |
galeon works, blackbox runs. |
68 |
|
69 |
Beware though... when you start to mix c++ codes it will probably break |
70 |
in strange ways. Solution: recompile :) |
71 |
|
72 |
I hope this helps..... |
73 |
|
74 |
|
75 |
//Spider |
76 |
|
77 |
|
78 |
|
79 |
|
80 |
|
81 |
|
82 |
|
83 |
|
84 |
|
85 |
-- |
86 |
begin .signature |
87 |
This is a .signature virus! Please copy me into your .signature! |
88 |
See Microsoft KB Article Q265230 for more information. |
89 |
end |