Subject: Re: Message catalog system corrupt?
To: None <port-sparc@NetBSD.ORG>
From: der Mouse <mouse@Collatz.McRCIM.McGill.EDU>
List: port-sparc
Date: 07/01/1996 20:26:37
> Since I have installed the 1.2b-binaries from the install-directory,
> and a one-day old supped kernel on my Sparc ELC, I keep getting
> bitten by this rather cryptic message:

> Message Catalog System: corrupt file.

> It happens when, for instance, I try to cd or ls a non-exsistant
> directory [...]  Now if it would only happen on things like failed
> shell-commands I wouldn't worry very much, but I've also had a
> running top die with this message...

I've been seeing that too, for some time, despite having done at least
half a dozen full "make build"s, including the full installs they
imply.

I currently believe it means you need to relink the affected
program(s), which I feel sure you'll find were linked static.  In
/usr/lib, I see

[Callisto] 110> strings - libc.so.12.4 | egrep 'corrupt file'
%s: corrupt file.
[Callisto] 111> strings - libc.so.12.5 | egrep 'corrupt file'
[Callisto] 112> 

I suspect the mechanisms underlying strerror() and friends were
changed, and of course the library minor version number changed.  And
naturally the driving data files had to change to match.  But nothing
could be done about user-provided executables that were already
statically linked with the old library; they get upset over the
new-format data files and emit this cryptic message.

That's my current theory.  Contrary theories welcome as always,
particularly if they include explanations. :-)

					der Mouse

			    mouse@collatz.mcrcim.mcgill.edu
		    01 EE 31 F6 BB 0C 34 36  00 F3 7C 5A C1 A0 67 1D