1 |
On Thu, Apr 26, 2012 at 1:16 AM, Michael Mol <mikemol@×××××.com> wrote: |
2 |
> On Thu, Apr 26, 2012 at 12:37 AM, Michael Mol <mikemol@×××××.com> wrote: |
3 |
>> On Wed, Apr 25, 2012 at 11:50 PM, Canek Peláez Valdés <caneko@×××××.com> wrote: |
4 |
>>> On Wed, Apr 25, 2012 at 10:09 PM, Michael Mol <mikemol@×××××.com> wrote: |
5 |
>>>> I've had two segfaults I'd never seen before. One in sudo and one in |
6 |
>>>> rdesktop. Updates later when I get things better tracked down. |
7 |
>>> |
8 |
>>> I had a gcc segfault in my atom server, with MAKEOPTS=-j5. With |
9 |
>>> MAKEOPTS=-j1, I got undefined references while linking some modules. |
10 |
>>> My desktop and my laptop, however, compiled it without problems. |
11 |
>>> |
12 |
>>> I haven't had the time to check it, but it seems weird. |
13 |
>> |
14 |
>> Replacing with a binpackage from packages.gentooexperimental.org got |
15 |
>> bash working. Now I'm seeing if I can re-emerge gcc, binutils and |
16 |
>> glibc. |
17 |
>> |
18 |
>> If that goes through, I'm going to restart the emerge -e; my resume |
19 |
>> stack is probably toast. |
20 |
> |
21 |
> Ok, yes. This version of glibc, =sys-libs/glibc-2.14.1-r3, is crud. At |
22 |
> least, if you're doing parallel building. Out of my three machines, |
23 |
> the 8-core box got bit by it, the 4-core box got bit by it, but the |
24 |
> 2-core laptop sailed past. |
25 |
> |
26 |
> I have a hunch that setting MAKEOPTS="-j1" will fix it for me, and I'm |
27 |
> letting that run as I head off to sleep in a few minutes. |
28 |
|
29 |
Note, my experiences and instructions are specific to amd64 boxes. I |
30 |
don't know if other boxes are affected, and the workaround I'm writing |
31 |
below is not appropriate for anything but amd64. |
32 |
|
33 |
Incidentally, you'll know if your box got bit if you do a large set of |
34 |
emerges which include building glibc, and everything after glibc's |
35 |
'Install' phase fails. Don't trust emerge's output; at this point, |
36 |
bash is segfaulting on startup, which makes emerge utterly unreliable, |
37 |
even as it tries to tell you the cause for errors. |
38 |
|
39 |
DO NOT close your open shells; you won't be able to launch bash until |
40 |
you've fixed this. |
41 |
|
42 |
To work around, you'll need a root shell. If you have any shell at |
43 |
all, you should be able to get a root shell by running |
44 |
|
45 |
sudo busybox sh |
46 |
|
47 |
in any of your remaining shells which have sudoer access. |
48 |
|
49 |
grab |
50 |
|
51 |
glibc-2.14.1-r3.tbz2 |
52 |
|
53 |
from |
54 |
|
55 |
http://packages.gentooexperimental.org/packages/amd64-unstable/sys-libs/ |
56 |
|
57 |
using wget. At least in my situation, wget still worked. Move the |
58 |
tarball to your / directory: |
59 |
|
60 |
mv glibc-2.14.1-r3.tbz2 / |
61 |
|
62 |
and unpack it |
63 |
|
64 |
tar xvjpf glibc-2.14.1-r3.tbz2 |
65 |
|
66 |
You should now have bash back, which means you'll have emerge back, |
67 |
and probably the rest of your system. |
68 |
|
69 |
-- |
70 |
:wq |