This is the mail archive of the
mailing list for the GCC project.
binutils 126.96.36.199.27 is released.
- To: linux-gcc at vger dot rutgers dot edu (linuxgcc)
- Subject: binutils 188.8.131.52.27 is released.
- From: hjl at lucon dot org (H.J. Lu)
- Date: Sun, 29 Mar 1998 00:36:28 -0800 (PST)
- Cc: kjahds at kjahds dot com (Kenneth Albanowski), lmfken at lmf dot ericsson dot se (Kenneth Osterberg), ian at lasermoon dot co dot uk, mat at lcs dot mit dot edu (Mat Hostetter), doughera at lafcol dot lafayette dot edu (Andy Dougherty), brian at mathworks dot com (Brian Bourgault), john at etools dot com (John W. Christy), craig at metrolink dot com (Craig Groeschel), imp at village dot org (Warner Losh), robf at Willows dot Com (Rob Farnum), meissner at cygnus dot com (Michael Meissner), rfg at monkeys dot com (Ron Guilmette), roell at xinside dot com (Thomas Roell), burley at gnu dot org (Craig Burley), linux-binutils-in at polstra dot com (John Polstra), galenh at micron dot net (Galen Hazelwood), ralf at mailhost dot uni-koblenz dot de (Ralf Baechle), egcs at cygnus dot com, libc-linux at gnu dot org (GNU C Library)
A few x86 gas bugs are fixed. Please give it another try.
H.J. Lu (firstname.lastname@example.org)
This is the beta release of binutils 184.108.40.206.27 for Linux, which is
based on the binutils 980327 snapshot plus Linux/ARM support.
There was some problem on Linux/alpha. It turned out it was a bug
in the alpha dynamic linker in glibc 2.0.6. The current glibc 2.1
and glibc 2.0.7 should be ok.
This release should work on linux/x86. 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 220.127.116.11.27 to email@example.com.
Changes from binutils 18.104.22.168.26:
1. For x86, don't emit operand size prefix if there is no ambiguity.
2. Add "xlatb" for x86.
Changes from binutils 22.214.171.124.25:
1. Update from the binutils gas-980327.
2. There are some major x86 assembler changes with operand size suffix.
Some x86 assembler performence bugs are fixed. The Linux kernel and
applications may run faster when assembled the new x86 assembler on
x86. Please double check them on x86. gcc/egcs should be fine. But
the Linux kernel does have some invalid x86 assembly code. In
arch/i386/lib/locks.S, there was
btl %dl, SYMBOL_NAME(smp_invalidate_needed)
It is not valid. The register should be either 16-bit or 32-bit.
8-bit is not allowed. If you have any x86 assembler problem, please
let me know.
Changes from binutils 126.96.36.199.24:
1. Update from the binutils gas-980325.
2. Change the x86 assembler error from as_bad to as_warn.
3. Fix the address for x86's lgdt/lidt.
4. Add 'S' to ar to disable symbol-table generation. Maybe used by
glibc build to speed up archive update.
Changes from binutils 188.8.131.52.23:
1. Update from the binutils gas-980320.
2. Fix an x86 assembler bug.
3. Fix a Sparc/ELF bfd bug.
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-184.108.40.206.27.tar.gz. Source code.
2. binutils-220.127.116.11.26-18.104.22.168.27.diff.gz. Patch against the previous
beta source code.
3. binutils-22.214.171.124.27.bin.tar.gz. Precompiled Linux/x86 binaries for
4. binutils-126.96.36.199.27-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
To install the binary package, please follow the procedure very closely.
Please backup/save all the files you are instructed to delete and you
gzip -dc binutils-188.8.131.52.27.bin.tar.gz | tar tvvf -
gzip -dc binutils-184.108.40.206.27-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-220.127.116.11.27.bin.tar.gz | tar xvvf -
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-18.104.22.168.27-glibc.bin.tar.gz | tar xvvf -
Now you have the new gas/binutils under /usr/bin and
/usr/ix86-linuxaout/bin. You have to use
/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,
# cd sybase/lib
# for f in *.a
objcopy --remove-leading-char $f
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
According to Bruce Milner <Bruce.Milner@genetics.utah.edu>:
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"
firstname.lastname@example.org put a ELF'ized version of these