Subject: binutils 2.8.1.0.19 is released (fwd)

From: Philip Blundell <[email-masked]>
Date: Fri, 16 Jan 1998 08:51:52 +0000

Hi.

HJ has made a new version of binutils which includes my previous patch.  Dave, 
do you still have problems with compiling the kernel with this version?

p.

------- Forwarded Message

From: [email-masked] (H.J. Lu)
Subject: binutils 2.8.1.0.19 is released.
To: [email-masked] (Philip Blundell)
Date: Thu, 15 Jan 1998 14:39:14 -0800 (PST)
Cc: [email-masked] (GNU C Library), [email-masked] (linuxgcc),
        [email-masked] (Kenneth Albanowski),
        [email-masked] (Kenneth Osterberg), [email-masked],
        [email-masked] (Mat Hostetter),
        [email-masked] (Andy Dougherty),
        [email-masked] (Brian Bourgault),
        [email-masked] (John W. Christy),
        [email-masked] (Craig Groeschel), [email-masked] (Warner Losh),
        [email-masked] (Rob Farnum), [email-masked] (Michael Meissner),
        [email-masked] (Ron Guilmette), [email-masked] (Thomas Roell),
        [email-masked] (Craig Burley),
        [email-masked] (John Polstra),
        [email-masked] (Simon Shapiro),
        [email-masked] (Galen Hazelwood),
        [email-masked] (Ralf Baechle)
In-Reply-To: <[email-masked]> from "Philip Blundell" at Dec 27, 97 12:08:27 pm
X-Mailer: ELM [version 2.4 PL25 PGP2]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

> Here's a patch against binutils 2.8.1.0.18.  It contains the initial 
> support for ELF and PIC code on the ARM.  It also contains a workaround for a 

Thanks. I changed Linux/ARM/ELF target from arm-linuxelf to arm-linux*.

> bug that causes objdump to crash when disassembling ARM code.
> 
> Please include it in the next binutils release.
> 

H.J.
- ----
This is the beta release of binutils 2.8.1.0.19 for Linux, which is
based on the binutils 980114 snapshot plus linux/PPC patch and
Linux/ARM support.

This release should work on linux/x86. But there may be some problems
on Linux/alpha. I was told as was ok, but ld and/or dynamic linker
were not right on Linux/alpha. I couldn't finish "make check" on
Linux/alpha with the libg++ addon. There are some ELF bug fixes. But
I don't know if it fixes all the bugs reported on linux/sparc,
Linux/MIPS and linux/PPC. I'd like to hear reports on them.

Please report any bugs related to binutils 2.8.1.0.19 to
[email-masked].

Changes from binutils 2.8.1.0.18:

1. Update from the binutils gas-980114.
2. The ARM/ELF support.
3. Fix lib*.so.* support. Use the release number in soname.

Changes from binutils 2.8.1.0.17:

1. Update from the binutils gas-971211.
2. Add lib*.so.* support. But the soname is lib*.so.2.

Changes from binutils 2.8.1.0.16:

1. Update from the binutils gas-971105.
2. Fix ld test for linux.
3. Fix the 2.8.1.0.16 patch.

Changes from binutils 2.8.1.0.15:

1. Update from the binutils gas-971103.
2. ELF/Alpha seems to work fine, including versioning.
3. ELF/PPC patches from Geoff Keating  <[email-masked]>.

IMPORTANT:
The .plt format that the Alpha was using was not thread safe.  So I 
changed it.  The new format is *not* binary compatible with the old,
thus you must use glibc 2.0.4 to get an ld.so that can understand it.

Note that the new ld.so knows how to deal with the old .plt format, so
old libraries will still work, but they should be relinked eventually
for performance reasons.

The file list:

1. binutils-2.8.1.0.19.tar.gz. Source code.
2. binutils-2.8.1.0.18-2.8.1.0.19.diff.gz. Patch against the previous
   beta source code.
3. binutils-2.8.1.0.19.bin.tar.gz. Precompiled Linux/x86 binaries for
   libc 5.
4. binutils-2.8.1.0.19-glibc.bin.tar.gz. Precompiled Linux/x86 binaries
   for libc 6 (glibc 2.0.5c or above).

The primary ftp sites for the compiler/C library are tsx-11.mit.edu
under pub/linux/packages/GCC and sunsite.unc.edu under pub/Linux/GCC.
The beta directory is in private/tofu under the GCC directory.
 
Most of my stuff can also be found at

   ftp://ftp.yggdrasil.com/private/hjl

To install the binary package, please follow the procedure very closely.
Please backup/save all the files you are instructed to delete and you
should do
 
	gzip -dc binutils-2.8.1.0.19.bin.tar.gz | tar tvvf -
 
or
	gzip -dc binutils-2.8.1.0.19-glibc.bin.tar.gz | tar tvvf -
 
to see what is in there.
 
Please do back up before you remove things.

To install for libc 5, PLEASE DO
 
1. su root
2. cd /
3. rm -f /usr/bin/encaps /usr/bin/nm
4. gzip -dc binutils-2.8.1.0.19.bin.tar.gz | tar xvvf -
5. ldconfig
 
To install for libc 6 (glibc 2.0.5c or above), PLEASE DO
 
1. su root
2. cd /
3. rm -f /usr/bin/encaps /usr/bin/nm
4. gzip -dc binutils-2.8.1.0.19-glibc.bin.tar.gz | tar xvvf -
5. ldconfig
 
Now you have the new gas/binutils under /usr/bin and
/usr/ix86-linuxaout/bin. You have to use
 
/usr/ix86-linuxaout/bin/as
 
and
 
/usr/ix86-linuxaout/bin/ld -m i386linux
 
if you want to use a.out as and ld directly.
 
I have changed the target names for Linux/x86 and Linux/x86 (a.out)
to ix86-linux and ix86-linuxaout respectively. The precompiled
binaries are installed under /usr/ix86-linux and /usr/ix86-linuxaout.
You should make appropriate symbolic links if you have a different
name for the Linux/x86 target, like i586-unknown-linux.

If you have an old linux library in the a.out format and you cannot
obtain the newer version in the ELF format for whatever reason, you
can try "objcopy --remove-leading-char" on the a.out library and see
if it can link with your code in ELF. For Sybase client libraries,
I did

# cd sybase/lib
# for f in *.a
do
  objcopy --remove-leading-char $f
done

It seems to compile/link fine with libc 5.4.2x. But I don't know
if it really works or not. The resulting binaries should work
if the libc ABI used by the old library is unchanged in the new
libc.

According to Bruce Milner <[email-masked]>:

Just a quick note about your example using objcopy for
sybase. The sybase a.out libraries "are" dependent on a changed
feature of the libc ABI.
 
The ctype macros changed to a byte order independent format
(little endian). In order to use the sybase libraries, one needs to
rename the the ctype table variables in the sybase library files
and link in an old version of the libc's "C-ctype.o ctype-info.o"
files.

[email-masked] put a ELF'ized version of these
libraries on 

ftp://mudshark.sunquest.com/pub/ctlib-linux-elf

Thanks.

H.J. Lu
[email-masked]
01/15/98

------- End of Forwarded Message

unsubscribe: body of `unsubscribe linux-arm' to [email-masked]