1 |
Randy Barlow posted on Fri, 22 Jan 2010 23:41:05 -0500 as excerpted: |
2 |
|
3 |
> Randy Barlow wrote: |
4 |
>> I'll give the sandbox trick a whirl. |
5 |
> |
6 |
> Well, that turned out to be kind of hilarious: |
7 |
|
8 |
> * If configure failed with a 'cannot run C compiled programs' error, |
9 |
> try this: |
10 |
> * FEATURES=-sandbox emerge sandbox |
11 |
> |
12 |
> I love how the package itself tells me to try the very command I did |
13 |
> try. |
14 |
|
15 |
Yeah... That's a known issue, with that as one of the common fixes, so |
16 |
they mention it. Obviously they don't check the feature set when output |
17 |
that, tho. |
18 |
|
19 |
> Anyways, perhaps I should just extract another snapshot over this |
20 |
> one... |
21 |
|
22 |
That sounds like a good idea. The toolchain is obviously broken, and |
23 |
extracting a new stage tarball over top is one way to fix it. |
24 |
|
25 |
When you retry, keep track of what packages are installed and if you get |
26 |
that problem, which of the toolchain packages (gcc and glibc especially) |
27 |
was installed last. That's going to be the problem package. If they're |
28 |
all still what was on the stage tarball, then it's gotta be it. |
29 |
|
30 |
Meanwhile, to make things easier if something like this happens when you |
31 |
have the system up and running normally, you may wish to set |
32 |
FEATURES=buildpkg (and set PKGDIR appropriately if you don't like the |
33 |
default). That way, as you build packages, they'll get binpkged as |
34 |
well. Over time, you'll build up multiple versions of most packages, and |
35 |
if one breaks, it's easy enough to revert using emerge --usepkgonly =pkg- |
36 |
version. That way, a broken gcc won't matter as you can just remerge an |
37 |
older, working version. If the problem is portage or python, so emerge |
38 |
itself is broken, since the binpkgs are simple tarballs with extra |
39 |
metadata tacked on the end, you can simply extract the tarball directly |
40 |
over the live filesystem if you have to (but be sure to move config files |
41 |
out of the way first, so they don't get overwritten by the defaults in |
42 |
the pkg tarball, then move them back). Of course, portage won't know |
43 |
about it then, so once it's working again, the first thing you'll want to |
44 |
do is remerge the version you just extracted, thus updating the package |
45 |
database so it knows what's installed. If you put PKGDIR on its own |
46 |
filesystem, 4 gigs or so is a reasonable size, giving you room to keep |
47 |
multiple copies of your packages without having to clean out the old ones |
48 |
too often. |
49 |
|
50 |
Anyway... hassles with 32-bit, and the fact that I don't run |
51 |
proprietaryware and all the FLOSS I run had been long ported to amd64 |
52 |
anyway, were the reason I finally decided a couple years ago to go no- |
53 |
multilib. |
54 |
|
55 |
Generally, the only reason to run multilib is proprietary binary-only |
56 |
32-bit-only packages such as games, codecs, and possibly other legacy |
57 |
software, and codecs, flash, etc, are more and more available for 64-bit |
58 |
anyway, if you /do/ choose to run proprietary, so the reasons to hassle |
59 |
32-bit multilib are becoming fewer and fewer. Meanwhile, the benefits to |
60 |
going multilib include leaving the hassle of keeping a working 32-bit |
61 |
toolchain behind, and halving your gcc and glibc compile time because 32- |
62 |
bit doesn't need built. For me, that was an easy choice to make, and one |
63 |
I haven't regretted. I only wished I had made it sooner! =:^) |
64 |
|
65 |
And, FWIW, it's always possible to do the 32-bit chroot thing using the |
66 |
Gentoo guide for it, and compile your own separately tracked 32-bit |
67 |
system. Actually, that's what I did when I setup my netbook with Gentoo, |
68 |
using a 32-bit chroot to setup an image on my main machine, since it's so |
69 |
much more powerful, then transferring the image to the netbook. I'm |
70 |
using rsync to keep the images synced, now. |
71 |
|
72 |
-- |
73 |
Duncan - List replies preferred. No HTML msgs. |
74 |
"Every nonfree program has a lord, a master -- |
75 |
and if you use the program, he is your master." Richard Stallman |