Gentoo Archives: gentoo-amd64

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-amd64@l.g.o
Subject: [gentoo-amd64] Re: Building vanilla gcc fails, any ideas?
Date: Wed, 06 Feb 2008 17:30:52
Message-Id: pan.2008.02.06.17.30.35@cox.net
In Reply to: [gentoo-amd64] Building vanilla gcc fails, any ideas? by Jack Lloyd
1 Jack Lloyd <lloyd@×××××××××.net> posted
2 20080206144246.GE8236@×××××××××.net, excerpted below, on Wed, 06 Feb 2008
3 09:42:47 -0500:
4
5 > Trying to build a gcc 4.3 snapshot (20080125) fails on my x86-64 box.
6
7 > Currently I'm configuring with
8 >
9 > ../gcc-4.3-20080125/configure --enable-languages=c,c++,objc,obj-c++
10 > --prefix=/usr/local/gcc-4.3-20080125 --program-suffix=-4.3-20080125
11
12 You'll probably have better luck (and if nothing else, can see what sort
13 of patches Gentoo is including to see if any of them might fix your
14 problem) if you use the Gentoo ebuild snapshots. These aren't in the
15 main tree, as they've been moved to I believe the toolchain overlay. The
16 easiest way to grab various overlays is to emerge layman, check its
17 documentation and configure it, then add the overlays you want to your
18 list. Here, I have my own "esyn" (note the missing c, so I know it's my
19 version) script that syncs portage and layman, does the esearch update
20 database, and emerge --fetch 's all the updated ebuilds, so they are
21 ready to go when I decide to merge them.
22
23 I haven't been keeping up with gcc-4.3, but for 4.0 thru 4.1, I regularly
24 ran the snapshot ebuilds as my main system gcc, using gcc-config to
25 switch back to an earlier version when something failed to build with the
26 newer version. Since 4.0 was the first version that supported amd64
27 natively (with 3.x it was an add-on) but the .0 was mainly a rewrite and
28 didn't target major improvements, both 4.0 and 4.1 were big improvements
29 for gcc on amd64, far bigger than on x86 (32-bit), but 4.0 had some
30 issues that were fixed fairly quickly for the 4.1 branch, so it was
31 actually better than the stable 4.0 branch at that point.
32
33 BTW, if you don't specifically need multilib, things get quite a bit less
34 complex if you choose a no-multilib (64-bit only) profile. Since both
35 gcc and glibc basically double their build when doing multilib, it
36 substantially decreases merge time for them, and the all too common
37 problems with sandbox (which result from issues with the 32-bit side gcc
38 which aren't apparent elsewhere since nothing else uses them) disappear
39 as well.
40
41 Alternatively for those that DO use 32-bit stuff still, it's possible to
42 do the full chroot thing, compiling everything you need 32-bit as 32-bit,
43 almost but not quite to the point of having a parallel 32-bit Gentoo
44 beside your 64-bit one. (If you do want a parallel 32-bit boot, it's
45 pretty easy once you have the chroot setup, just a few more packages.)
46 That's better for 32-bit than using multilib anyway, since you get to
47 compile all the compatibility libs that you'd otherwise install as
48 binaries, and compiling is the Gentoo way. =8^) But you don't HAVE to
49 compile it for the initial install unless you want to, as you can use a
50 stage-3 and packages CD install instead. =8^) (Of course, this will be
51 easier once 2008.0 comes out; 2007.0 is getting a bit long in the tooth
52 by now.)
53
54 I don't do proprietaryware and everything I need happens to be 64-bit
55 compatible already, so I've no reason to run 32-bit anyway, but knowing
56 how much it has simplified things, and that there's the 32-bit chroot
57 guide already available telling how to do that, I'd prefer that to going
58 back to multilib if I DID have reason to run 32-bit, now. Of course as
59 they say, YMMV, but it's certainly an option, and it certainly does cut
60 the headaches of having 32-bit problems hamper updates on an otherwise
61 mainly 64-bit system.
62
63 You asked for hints. Those are mine. =8^)
64
65 --
66 Duncan - List replies preferred. No HTML msgs.
67 "Every nonfree program has a lord, a master --
68 and if you use the program, he is your master." Richard Stallman
69
70 --
71 gentoo-amd64@l.g.o mailing list