You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Catherine Moore e745689c95 * readelf.c (dump_relocations): Handle EM_ARM as REL. 28 years ago
..
po rebuild 29 years ago
testsuite Add tests for readelf's Dwarf2 dumping feature. 28 years ago
.Sanitize Remove v850e sanitization 28 years ago
ChangeLog * readelf.c (dump_relocations): Handle EM_ARM as REL. 28 years ago
Makefile.am Add dependency of readelf.c on elf/fr30.h 28 years ago
Makefile.in Add dependency of readelf.c on elf/fr30.h 28 years ago
NEWS x 29 years ago
README * README: Add notes on how to build if you don't have ar. 31 years ago
acconfig.h * Many files: Added gettext invocations around user-visible 29 years ago
acinclude.m4 * acinclude.m4: Include bfd/acinclude.m4, not bfd/acmacros.m4. 29 years ago
aclocal.m4 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool. 29 years ago
addr2line.1 addr2line.c contributed by Ulrich Lauther 30 years ago
addr2line.c * Makefile.am (INCLUDES): Search intl dirs for headers; define 29 years ago
ar.1 From Zack Weinberg <zack@rabi.phys.columbia.edu> and H.J. Lu 29 years ago
ar.c * Makefile.am (INCLUDES): Search intl dirs for headers; define 29 years ago
arlex.l * arlex.l: Make work with lex, for what it's worth. 35 years ago
arparse.y Wed Apr 15 14:33:07 1992 Steve Chamberlain (sac@thepub.cygnus.com) 35 years ago
arsup.c Added EXTRACT command 35 years ago
arsup.h Wed Apr 15 14:33:07 1992 Steve Chamberlain (sac@thepub.cygnus.com) 35 years ago
binutils.texi Add preliminary DWARF2 dumpping capability to readelf. 28 years ago
bucomm.c Tue Jul 22 16:19:34 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE> 29 years ago
bucomm.h * Many files: Added gettext invocations around user-visible 29 years ago
budbg.h * stabs.c (struct stab_handle): Add field abfd. 31 years ago
coffdump.c * coffdump.c (xcalloc): Remove, in libiberty now. 28 years ago
coffgrok.c Fix some gcc -Wall warnings: 29 years ago
coffgrok.h * coffgrok.[ch]: New files, understand coff objects. 33 years ago
config.in * Makefile.am: New file, based on old Makefile.in. 29 years ago
configure Mon Nov 2 14:59:33 1998 Geoffrey Noer <noer@cygnus.com> 28 years ago
configure.bat DJ renaming 35 years ago
configure.com Tue Apr 1 16:21:44 1997 Klaus Kaempf <kkaempf@progis.de> 30 years ago
configure.in Build dlltool for thumb-pe target 29 years ago
cxxfilt.man actually do c++filt.1 -> cxxfilt.man renaming on trunk... 33 years ago
debug.c From Yuli Barcohen <yuli.barcohen@telrad.co.il>: 29 years ago
debug.h * debug.h (enum debug_var_kind): Add DEBUG_VAR_ILLEGAL. 31 years ago
deflex.l * deflex.l: Accept '?' in symbol names, for VC++ mangled names. 29 years ago
defparse.y dlltool.c: Added support for IMPORTS. 29 years ago
dep-in.sed * Makefile.in: Add targets to automatically rebuild dependencies. 31 years ago
dlltool.c Sun Oct 25 10:37:45 1998 Mumit Khan <khan@xraylith.wisc.edu> 28 years ago
dlltool.h dlltool.c: Added support for IMPORTS. 29 years ago
dllwrap.c Mon Oct 26 14:07:59 1998 Mumit Khan <khan@xraylith.wisc.edu> 28 years ago
dyn-string.c Thu Oct 8 15:33:08 1998 Geoffrey Noer <noer@cygnus.com> 28 years ago
dyn-string.h Thu Oct 8 15:33:08 1998 Geoffrey Noer <noer@cygnus.com> 28 years ago
filemode.c Initial revision 36 years ago
ieee.c * ieee.c (ieee_array_type): Remember the correct size. 30 years ago
is-ranlib.c Initial revision 35 years ago
is-strip.c Initial revision 35 years ago
mac-binutils.r * mac-binutils.r: Fix copyright and version strings. 31 years ago
makefile.vms-in Thu Jul 2 14:01:34 1998 Klaus Kaempf <kkaempf@rmi.de> 29 years ago
maybe-ranlib.c Initial revision 35 years ago
maybe-strip.c Initial revision 35 years ago
mpw-config.in * mpw-config.in (BUILD_NLMCONV, BUILD_SRCONV, SYSINFO_PROG, 31 years ago
mpw-make.sed * mpw-make.sed: Use NewFolderRecursive for installation. 30 years ago
nlmconv.1 * nlmconv.1: Changed to be recognized by catman -w on Solaris. 31 years ago
nlmconv.c * Makefile.am (INCLUDES): Search intl dirs for headers; define 29 years ago
nlmconv.h Checkpoint of NLM conversion program. 33 years ago
nlmheader.y * nlmheader.y: Null terminate var_hdr->threadName. 33 years ago
nm.1 * nm.c (struct get_relocs_info): Define. 31 years ago
nm.c * Makefile.am (INCLUDES): Search intl dirs for headers; define 29 years ago
not-ranlib.c Initial revision 35 years ago
not-strip.c Initial revision 35 years ago
objcopy.1 fix copyrights 28 years ago
objcopy.c Minor formatting improvements. 29 years ago
objdump.1 * objdump.1: Fix typo (-d to -D). From Nokubi Hirotaka 28 years ago
objdump.c Fixup previous delta by replacing 'unsigned long' with 'bfd_vma' 28 years ago
prdbg.c * debug.c (struct debug_handle): Remove class_mark field. Add 31 years ago
ranlib.1 fix NAME hyphen 33 years ago
ranlib.sh Initial revision 35 years ago
rclex.l * rclex.l: Add casts and change types to avoid warnings. 29 years ago
rcparse.y * rclex.l: Add casts and change types to avoid warnings. 29 years ago
rdcoff.c * rdcoff.c: New file. 31 years ago
rddbg.c * rdcoff.c: New file. 31 years ago
readelf.c * readelf.c (dump_relocations): Handle EM_ARM as REL. 28 years ago
resbin.c * rclex.l: Add casts and change types to avoid warnings. 29 years ago
rescoff.c * rclex.l: Add casts and change types to avoid warnings. 29 years ago
resrc.c * resbin.c: New file. 30 years ago
resres.c Tue Oct 6 18:20:10 1998 Geoffrey Noer <noer@cygnus.com> 28 years ago
sanity.sh remove temporary directory when finished 35 years ago
size.1 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 31 years ago
size.c * Makefile.am (INCLUDES): Search intl dirs for headers; define 29 years ago
srconv.c * coffdump.c (xcalloc): Remove, in libiberty now. 28 years ago
stabs.c * stabs.c (parse_stab_range_type): Handle 4 and 8 byte signed 29 years ago
stamp-h.in * Makefile.am: New file, based on old Makefile.in. 29 years ago
strings.1 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 31 years ago
strings.c * Makefile.am (INCLUDES): Search intl dirs for headers; define 29 years ago
strip.1 * strip.1: Fix typo (-V to -v). From Issei Hirayama 28 years ago
sysdump.c * coffdump.c (xcalloc): Remove, in libiberty now. 28 years ago
sysinfo.y * coffgrok.[ch]: New files, understand coff objects. 33 years ago
syslex.l (yywrap): Define as function if not defined as a macro. 33 years ago
version.c * Makefile.in, ar.c, bucomm.c, copy.c, cplus-dem.c, filemode.c, 35 years ago
windres.c * Makefile.am (INCLUDES): Search intl dirs for headers; define 29 years ago
windres.h * rclex.l: Add casts and change types to avoid warnings. 29 years ago
winduni.c new files for windres 29 years ago
winduni.h new files for windres 29 years ago
wrstabs.c * wrstabs.c: New file. 31 years ago

README

This is a beta release of a completely rewritten binutils distribution.
(Rewritten since binutils 1.x, that is.)

The linker (ld) has been moved into a separate directory, which should be
../ld. Linker-specific notes are in ../ld/README.

As of version 2.5, the assembler (as) is also included in this package, in
../gas. Assembler-specific notes can be found in ../gas/README.

These programs have been tested on various architectures.
However, since this is a beta release taken directly from an
evolving source tree, there might be some problems. In particular,
the programs have not been ported to as many machines as the
old binutils. There are also features of the old versions
that are missing on the new programs. We would appreciate
patches to make things run on other machines; especially welcome
are fixes for what used to work on the old programs!
(See ./TODO, as well a ../bfd/TODO and ../ld/TODO.)

Recent changes are in ./NEWS, ../ld/NEWS, and ../gas/NEWS.

Unpacking and Installation -- quick overview
==========================

In this release, the binary utilities, the linker, the generic GNU include
files, the BFD ("binary file description") library, gprof, and getopt all
have directories of their own underneath the binutils-2.7 directory.
The idea is that a variety of GNU tools can
share a common copy of these things. Configuration scripts and
makefiles exist to cruise up and down this directory tree and
automatically build all the pieces in the right order.

When you unpack the binutils-2.7.tar.gz file, you'll get a directory
called something like `binutils-2.7', which contains:

COPYING bfd/ configure* libiberty/
COPYING.LIB binutils/ configure.in move-if-change*
CYGNUS build-all.mk etc/ opcodes/
ChangeLog config/ gprof/ test-build.mk
Makefile.in config.guess* inc

To build binutils, you can just do:

cd binutils-2.7
./configure [ --enable-targets='target1,target2...' ]
make
make install # copies the programs files into /usr/local/bin
# by default.

This will configure and build all the libraries as well as binutils
and the linker.

The --enable-targets option adds support for more binary file
formats besides the default. By default, support for only the
selected target file format is compiled in. To add support for more
formats, list them as the argument to --enable-targets, separated by
commas. For example:

./configure --enable-targets=sun3,rs6000-aix,decstation

The name 'all' compiles in support for all valid BFD targets (this was
the default in previous releases):

./configure --enable-targets=all

The binutils can be used in a cross-development environment.
The file etc/configure.texi contains more information.

You can also specify the --enable-shared option when you run
configure. This will build the BFD and opcodes libraries as shared
libraries. This will only work on certain systems, and currently will
only work when compiling with gcc. You can use arguments with the
--enable-shared option to indicate that only certain libraries should
be built shared; for example, --enable-shared=bfd. The only
possibilities in a binutils release are bfd and opcodes.

The binutils will be linked against the shared libraries. The build
step will attempt to place the correct library in the runtime search
path for the binaries. However, in some cases, after you install the
binaries, you may have to set an environment variable, normally
LD_LIBRARY_PATH, so that the system can find the installed libbfd
shared library.

If you specify --enable-commonbfdlib as well as --enable-shared, then
a single shared library will be built containing the bfd, opcodes, and
libiberty libraries. It will be installed as libbfd. This option
will make the binutils programs as small as possible.

If you don't have ar
====================

If your system does not already have an ar program, the normal
binutils build process will not work. In this case, run configure as
usual. Before running make, run this script:

#!/bin/sh
MAKE=${MAKE-make}
${MAKE} $* AR=true all-libiberty
${MAKE} $* AR=true all-bfd
cd binutils
${MAKE} $* ADDL_DEPS='$(BULIBS)' ADDL_LIBS='$(BULIBS) ../bfd/*.o `cat ../libiberty/required-list ../libiberty/needed-list | sed -e "s,\([^ ][^ ]*\),../libiberty/\1,g"`' ar

This script will build an ar program in binutils/ar. Move binutils/ar
into a directory on your PATH. After doing this, you can run make as
usual to build the complete binutils distribution. You do not need
the ranlib program in order to build the distribution.

Porting
=======
Binutils-2.7 supports many different architectures, but there
are many more not supported, including some that were supported
by earlier versions. We are hoping for volunteers to
improve this situation.

The major effort in porting binutils to a new host and/or target
architecture involves the BFD library. There is some documentation
in ../bfd/doc. The file ../gdb/doc/gdbint.texinfo (distributed
with gdb-4.x) may also be of help.

If your system uses some variant of old-style a.out-format,
you can start with a copy of bfd/newsos3.c, and edit it to fit.
(You may also need to tweak bfd/aout-target.h.)
Alternatively, you could use the host-aout.c target. This is a
special kludge that only works for native (non-cross) configurations.

Reporting bugs
==============
If you can't track down a bug and send suggestions/patches
for fixes, you should probably *not* be using this release.
We have little time to spend tracking down whatever random bugs you
may run into (except for configurations that Cygnus supports for
its customers). The general place to send bug reports or patches
is to bug-gnu-utils@ai.mit.edu; you can also send them directly to
raeburn@cygnus.com or ian@cygnus.com.