182 lines
4.0 KiB
Plaintext
182 lines
4.0 KiB
Plaintext
This is the beta release of binutils 2.6.0.13 for Linux, which is
|
|
based on the binutils snapshot, gas-960408. It is a Linux only release.
|
|
This release is only intended for an ELF based system. You also
|
|
need libc 5.3.9 and gcc 2.7.2 or above.
|
|
|
|
Some changes from 2.6.0.12 are:
|
|
|
|
1. Now the linker will consult /etc/ld.so.cache again for shared
|
|
libraries included by DT_NEEDED. -Wl,-rpath-link is no longer
|
|
needed if you compile on Linux for Linux.
|
|
2. The objdump core dump bug is fixe.
|
|
|
|
I also include the cross assembler and cross linker binaries for
|
|
SunOS and Solaris under Sparc, m68k/ELF and m68k/linuxaout as well
|
|
as alpha running Linux. But you have to configure your cross
|
|
compiler with
|
|
|
|
# configure --prefix=/usr --local-prefix=/usr/local \
|
|
--gxx-include-dir=/usr/include/g++ \
|
|
--with-gnu-ld --with-gnu-as \
|
|
--host=i486-linux --target=sparc-sun-sunos4.1
|
|
|
|
for Sparc/SunOS, or
|
|
|
|
# configure --prefix=/usr --local-prefix=/usr/local \
|
|
--gxx-include-dir=/usr/include/g++ \
|
|
--with-gnu-ld --with-gnu-as \
|
|
--host=i486-linux --target=sparc-sun-solaris2
|
|
|
|
for Sparc/Solaris, or
|
|
|
|
# configure --prefix=/usr --local-prefix=/usr/local \
|
|
--gxx-include-dir=/usr/include/g++ \
|
|
--with-gnu-ld --with-gnu-as \
|
|
--host=i486-linux --target=m68k-linux
|
|
|
|
for m68k/ELF, or
|
|
|
|
# configure --prefix=/usr --local-prefix=/usr/local \
|
|
--gxx-include-dir=/usr/include/g++ \
|
|
--with-gnu-ld --with-gnu-as \
|
|
--host=i486-linux --target=m68k-linuxaout
|
|
|
|
for m68k/a.out, or
|
|
|
|
# configure --prefix=/usr --local-prefix=/usr/local \
|
|
--gxx-include-dir=/usr/include/g++ \
|
|
--with-gnu-ld --with-gnu-as \
|
|
--host=i486-linux --target=alpha-linux
|
|
|
|
for alpha/Linux to use the cross assembler and linker binaries
|
|
without any changes.
|
|
|
|
This release contains "encaps" and a modified "objdump" by Ross. They
|
|
are used to compile the Linux kernel in ELF.
|
|
|
|
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.
|
|
|
|
To install this 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.6.0.13.bin.tar.gz | tar tvvf -
|
|
|
|
to see what is in there.
|
|
|
|
The binary file is binutils-2.6.0.13.bin.tar.gz. The source code is
|
|
binutils-2.6.0.13.tar.gz. A diff against 2.6 is too big to be
|
|
included. binutils-2.6.0.12-2.6.0.13.diff.gz is provided for binutils
|
|
2.6.0.12.
|
|
|
|
Please do back up before you remove things.
|
|
|
|
To install, PLEASE DO
|
|
|
|
1. su root
|
|
2. cd /
|
|
3. gzip -dc binutils-2.6.0.13.bin.tar.gz | tar xvvf -
|
|
|
|
Now you have the new gas/binutils under /usr/bin and
|
|
/usr/i486-linuxaout/bin. You have to do
|
|
|
|
/usr/i486-linuxaout/bin/as
|
|
|
|
and
|
|
|
|
/usr/i486-linuxaout/bin/ld -m i386linux
|
|
|
|
if you want to use a.out as and ld directly.
|
|
|
|
If you don't need the cross assemblers/linkers for m68k-linux,
|
|
m68k-linuxaout, sparc-sun-solaris2, sparc-sun-sunos4.1 nor alpha-linux,
|
|
please do
|
|
|
|
1. su root
|
|
2. cd /usr
|
|
3. rm -rf m68k-linux m68k-linuxaout sparc-sun-solaris2 sparc-sun-sunos4.1 alpha-linux
|
|
|
|
|
|
Thanks.
|
|
|
|
|
|
H.J. Lu
|
|
hjl@gnu.ai.mit.edu
|
|
04/17/96
|
|
-----
|
|
#! /bin/sh
|
|
#
|
|
# This is the shell script used to convert a static a.out library
|
|
# into the one compatible with ELF by removing the leading underscore
|
|
# in the global symbol names.
|
|
#
|
|
# Usage: convert libfoo.a [libbar.a ...]
|
|
#
|
|
# H.J. Lu
|
|
# hjl@gnu.ai.mit.edu
|
|
|
|
cwd=`pwd`
|
|
prog=$0
|
|
|
|
usage ()
|
|
{
|
|
echo Usage: $prog libfoo.a [libbar.a ...]
|
|
}
|
|
|
|
remove_underscore ()
|
|
{
|
|
lib=$1
|
|
|
|
case $lib in
|
|
lib*.a|*/lib*.a)
|
|
if [ ! -f $lib ];
|
|
then
|
|
echo $lib does not exist.
|
|
usage
|
|
exit -1
|
|
fi
|
|
;;
|
|
|
|
*)
|
|
echo $lib is not a static library.
|
|
usage
|
|
exit -1
|
|
;;
|
|
esac
|
|
|
|
case $lib in
|
|
/*)
|
|
wd=
|
|
;;
|
|
|
|
*)
|
|
wd=$cwd
|
|
;;
|
|
esac
|
|
|
|
|
|
tmpdir=$$$$
|
|
|
|
cd /tmp
|
|
rm -rf $tmpdir
|
|
mkdir $tmpdir
|
|
cd $tmpdir
|
|
ar -x $wd/$lib
|
|
for f in *.o
|
|
do
|
|
objcopy --remove-leading-char $f
|
|
done
|
|
ar -ucr ../`basename $lib` *.o
|
|
cd ..
|
|
rm -rf $tmpdir
|
|
mv /tmp/$lib $cwd
|
|
}
|
|
|
|
for l in $*
|
|
do
|
|
cd $cwd
|
|
remove_underscore $l
|
|
done
|