Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 May 1998 23:50:37 +0930 (CST)
From:      Kris Kennaway <kkennawa@physics.adelaide.edu.au>
To:        current@FreeBSD.ORG
Subject:   libc corruption
Message-ID:  <Pine.OSF.3.90.980515231223.18707A-100000@bragg>

next in thread | raw e-mail | index | archive | help
During a make world this morning (after cvsupping yesterday), my 
libc.so.3.1 somehow became corrupted (either something wonky happened to 
to break the source, or it got trashed during compilation or on disk 
afterwards, or something). 

Immediately after installing the new libc, make (which obviously uses 
that library) died with "undefined symbol: SYS_nlstat in libc.so.3.1" 
(paraphrased, but the standard message.)

Naturally, this was something of a problem, since without libc I couldnt 
run ANY dynamic binaries at all :-)

I ended up rebooting into win95, downloading the bin directory of a 
recent 3.0 snap onto another account, then extracting the libc file from 
there and installing it from single-user mode.

Unfortunately I no longer have the corrupted libc.so file, in case that 
might have been useful (having deleted it without thinking :-( However I 
do have the libc.a, a search of which with strings shows:

[morden|root] 23:39 ~/trash strings /usr/lib/libc.a | grep SYS
[morden|root] 23:39 ~/trash strings libc.a | grep SYS
SYS_nlstat
SYS_nfstat
SYS_nstat
SYS_netbsd_msync
SYS_lutimes
SYS_netbsd_lchown
SYS_lchmod
SYS_getdents
SYS_futimes

(~/trash holds the corrupted version)

I cant seem to find these symbols defined anywhere in the 
/usr/src/lib/libc tree - any ideas where they came from? Anyone want to 
take a look at the strange library? :-) I'm running softupdates on this 
partition - it's possible there was some kind of corruption there.

On another another point: how difficult would it be to set up an
uncompressed 3.0-SNAP tree somewhere (for disk space reasons, perhaps only
the most recent "stable" version, or something) - so if someone happens to
lose a major file, they can just walk in and grab the copy of the one they
need, instead of having to trawl through 50M of bin.aa's. 

Alternatively, if there's an easier way to do the above, could someone 
point it out in case I'm in this situation again?

Thanks,

Kris

 WOWBO     /\  .      Through the darkness of future past,     /\  .     BWOWB
 OBWOW    /##\/#\          The Magician longs to see.         /##\/#\    BOBWO
 WBOBW   /       \     One chance out between two worlds,    /       \   OWBOB
 WOWBO  /         \           Fire, Walk with me!           /         \  BWOWB


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.OSF.3.90.980515231223.18707A-100000>