Article View: comp.sys.amiga.tech
Article #11502Re: Anyone has the source of a good linker?
From: Steve Schoettler
Date: Fri, 17 Feb 1989 21:21
Date: Fri, 17 Feb 1989 21:21
42 lines
2524 bytes
2524 bytes
In article <8902171605.AA16549@jade.berkeley.edu> U211344@HNYKUN11.BITNET (Olaf 'Rhialto' Seibert) writes:
> ... we seem to be missing a linker with source.
Well, the gnu linker is available in binutils.tar.Z on prep.ai.mit.edu.
Naturally, the output is in a.out (b.out) unix executable format.
I can think of three ways to get the gnu ld to be useful on the amiga
(listed from most to least plausible):
1. For a first try, you might use the linker option that leaves the
resulting file in relocatable format, just before it causes it
to map to location 0. I suspect it wouldn't be too hard to add some
hunk headers to this format.
2. Use the a.out format, and rewrite loadseg() to act like the unix loader.
It would look in the first few bytes for a magic number. If no magic number
is found, it could call the old loadseg(). This would have the neat
advantage of being able to call AREXX if the file was in a particular
directory or had a special sequence of characters at the top.
3. If you knew there were going to be an MMU in the machine, just use
the regular unix a.out format and write a loader that tells the MMU
to install this at some virtual address 0. I don't really know if
the MMU can do this, and the program might have a problem communicating
with other tasks running in real address space.
I don't really give much credibility to (3), but I've thought a lot about
combinations of (1) and (2). Using a.out format would also allow you to
use a lot of other unix archiving programs, debuggers, etc. With your own
loader in place, you could write a version of resident that could make both
compiled programs and AREXX programs resident! And of course, you could use
gcc/gas/ld, which is why I suspect Olaf wanted a linker in the first place.
Something to think about anyway.
Steve
--
Steve Schoettler
shs@uts.amdahl.com
{sun,decwrl,pyramid,ames,uunet}!amdahl!shs
Amdahl Corp., M/S 213, 1250 E. Arques Ave, Sunnyvale, CA 94088
Technical Details
Message-ID:
<01k165dDlp10106aJkM@amdahl.uts.amdahl.com>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!bbn!apple!amdahl!shsReferences:
<8902171605.AA16549@jade.berkeley.edu>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!bbn!apple!amdahl!shs From: shs@uts.amdahl.com (Steve Schoettler) Newsgroups: comp.sys.amiga.tech Subject: Re: Anyone has the source of a good linker? Message-ID: <01k165dDlp10106aJkM@amdahl.uts.amdahl.com> Date: 17 Feb 89 21:21:45 GMT References: <8902171605.AA16549@jade.berkeley.edu> Reply-To: shs@amdahl.uts.amdahl.com (Steve Schoettler) Organization: Amdahl Corporation, Sunnyvale CA Lines: 42