Newsgroups: comp.os.linux.development
Path: gmd.de!xlink.net!howland.reston.ans.net!usc!elroy.jpl.nasa.gov!
newncar!csn!hellgate.utah.edu!sunset.cs.utah.edu!tevans
From: tevans%sunset.cs.utah....@cs.utah.edu (Terry Evans)
Subject: SVR4 binary support?
Date: 2 Feb 94 18:15:34 MST
Message-ID: <1994Feb2.181536.11001@hellgate.utah.edu>
X-Newsreader: TIN [version 1.2 PL1]
Lines: 27

  I just have a couple of questions concerning the state of being able to
run SVR4 binaries under linux.  What I mean by that are programs that report
"ELF 32-bit LSB executable 80386 Version 1" with the file command.

  A month (probably two) ago I got some of the latest stuff (libabi, kernel
level 14?, etc.).  Under that particular configuration I was able to run
the program "dc" from my AT&T based UNIX box at work.

  I just recently reinstalled Slackware 1.1.1 and got kernel level 14x
and the ibsc patches from the ALPHA directory.  Now when I try to run the
same "dc" program all I get is a segmentation violation.

  So, my questions finally are:

  What libraries (if any) do I need in order to try to see if some of my
SVR4 binaries will work?  Do I need the libabi stuff again since I no longer
have it?     

  If I need the libabi stuff could somebody inform me of where to find
it at?  I can't remember where I picked it up the last time.

  What can I do to help the project along?

Thanks!

Terry
tev...@cs.utha.edu

Newsgroups: comp.os.linux.development
Path: gmd.de!xlink.net!howland.reston.ans.net!news.cac.psu.edu!
news.pop.psu.edu!ra!tantalus.nrl.navy.mil!eric
From: e...@tantalus.nrl.navy.mil (Eric Youngdale)
Subject: Re: SVR4 binary support?
Message-ID: <CKnHB0.B4p@ra.nrl.navy.mil>
Sender: use...@ra.nrl.navy.mil
Organization: Naval Research Laboratory
References: <1994Feb2.181536.11001@hellgate.utah.edu>
Date: Thu, 3 Feb 1994 13:25:47 GMT
Lines: 58

In article <1994Feb2.181536.11...@hellgate.utah.edu> 
tevans%sunset.cs.utah....@cs.utah.edu (Terry Evans) writes:
>  I just have a couple of questions concerning the state of being able to
>run SVR4 binaries under linux.  What I mean by that are programs that report
>"ELF 32-bit LSB executable 80386 Version 1" with the file command.
>
>  A month (probably two) ago I got some of the latest stuff (libabi, kernel
>level 14?, etc.).  Under that particular configuration I was able to run
>the program "dc" from my AT&T based UNIX box at work.
>
>  I just recently reinstalled Slackware 1.1.1 and got kernel level 14x
>and the ibsc patches from the ALPHA directory.  Now when I try to run the
>same "dc" program all I get is a segmentation violation.

	This does not surprise me.

>  So, my questions finally are:
>
>  What libraries (if any) do I need in order to try to see if some of my
>SVR4 binaries will work?  Do I need the libabi stuff again since I no longer
>have it?     

	The libabi stuff was a gross hack that is unworthy of further support.
(I should point out that with libabi, you do not need the ibcs2 emulation
stuff).  The basic problem that you are having is that newer versions of libc
have changed the FILE struct quite a bit, and this broke the libabi.  In theory
it should not be too tough to fix, and if someone else want to try, feel free.

	I have patched my kernel so that it can use an ELF format program
interpreter, and I am in the process of figuring out how to bootstrap it.
Interesting problem (how do you dynamicly link the dynamic linker, when you
need to run the dynamic linker to dynamicly link itself).  Part of the problem
is that you do not want to completely dynamicly link the thing because
the application itself might replace certain functions in the shared library,
and thus I have it fixed to initially only link symbols that start with a "_".
I have things fixed so that the interpreter and the application are properly
loaded, and I am now working on loading additional shared libraries.

	This program loader is part of a libc that Al Longyear wrote mainly for
the COFF support.  It happens to fit my needs as well, so we have both been
working on it.

>  If I need the libabi stuff could somebody inform me of where to find
>it at?  I can't remember where I picked it up the last time.
>
>  What can I do to help the project along?

	Oh, well, now this is different :-).  My hope is that in a week or two
I will have my dynamic linker stuff done, and I will have something ready for
people to try.  The lack of support for shared libraries in the GNU utilities
means that all of the development now has to take place under SVr4 :-(.  Anyway
once something is done, I will ultimately need some testers who can give the
libc and dynamic linker a run for the money.

-Eric

-- 
"The woods are lovely, dark and deep.  But I have promises to keep,
And lines to code before I sleep, And lines to code before I sleep."