Re: linuxsdoom

Search this archive.

From: Dr. Michael Weller (eowmob@exp-math.uni-essen.de)
Date: Mon 24 Sep 2001 - 12:21:14 IST


On Fri, 21 Sep 2001, sh0 wrote:

> On Wed, 19 Sep 2001, Gary Russell wrote:
> 
> >
> >
> >   I downloaded linuxsdoom from your sit. .
> > when I tri to execute as root I get a ./linuxsdoom unable to execute binary
> > file   got any Ideals

> binfmt_aout
> binfmt_misc
> 
> I get this error:
> 
> ./linuxsdoom: can't load dynamic linker '/lib/ld.so'
> 
> ok, adding this from an old system, i get:
> 
> ./linuxsdoom: can't load library '/usr/lib/libvga.so.1'
>         Exec format error
> ./linuxsdoom: can't find library 'libvga.so.1'
> 
> adding an old libvga wont bring me the effect i want 8(
> 
> running slackware 8.0 now
> on slackware 7.1 there is no problem, so i think that must be
> a libc/glibc incompatibility (hope that word is right 8).

Hey, you answered your question yourself! This is an old a.out binary.
You do not only need old versions of ld.so libc etc etc. but also the
a.out versions of them. I'm pretty sure your /usr/lib/libvga.so.1 is an
ELF version. You should check that with the 'file' utility.

Unfortunately noone seemed to be willing to continue building a.out libvga
versions anymore. Admittedly doing that is an act of black magic anyway. I
would suggest that you get the required files (lib, libvga, libm maybe an
old ld.so) from a working system. However, do not attempt to mix them into
your new system. You'll probably have to setup them in another dir and
make have use of LD_PRELOAD and friends.

You might even come to a point where new and old execs compete for the
/lib/ld.so or /lib/ld.so.config.  You can then still patch the binaries
(with sed for example)  to use files in /LIB/ or so. Some distribs feature
old compat library sets for situations like this (Suse for example), but I
don't know if they provide ancient enough setup.

You might, however, discover that your hardware is not covered by such an
old libvga version. In that case, you are doomed >;-> .

Michael.

P.S. Doing things like that, I had to learn with very decent libraries how
M$isms sneak into the linux world. One might have thought that the
different 'major' version for incompatible library versions, different
'minor' versions for upwards (only) compatible library versions (may use
newer lib, but not older) and different 'patchlevels' for complete
exchangability (but - probably - less bugs in higher version) is simple
enough for anyone to understand. Alas, there are completely incompatible
libc6 versions around which require specific ld.so versions and yet they
all use the same major no, making it impossible for you to install both at
the same time. Probably because someone thought.. oh no, we can't make a
libc7 version it will shock some coding company. There are also some,
highly incompatible gnome and X11 libraries around which bear same or no
version info at all.

Fortunately, this shouldn't be an issue hear and with svgalib.

--

Michael Weller: eowmob@exp-math.uni-essen.de, eowmob@ms.exp-math.uni-essen.de,
or even mat42b@spi.power.uni-essen.de. If you encounter an eowmob account on
any machine in the net, it's very likely it's me.


------------------------------------------------------------------
Unsubscribe:  To:   listbot@svgalib.org
              Body: unsubscribe linux-svgalib


This archive was generated by hypermail 2.1.4 : Wed 21 Jan 2004 - 22:10:24 IST