This commit was generated by cvs2svn to track changes on a CVS vendor
[deliverable/binutils-gdb.git] / gdb / README
index 249d7546ab8c474749d14c6b73487833b4806f48..b9437c20ef11182ce4285a2aa7d3639f868d9c85 100644 (file)
@@ -1,5 +1,5 @@
-                     README for gdb-4.9 release
-                   Updated 10-May-93 by Fred Fish
+                     README for gdb-4.13 release
+                   Updated 8-Aug-94 by Fred Fish
 
 This is GDB, the GNU source-level debugger, presently running under un*x.
 A summary of new features is in the file `NEWS'.
@@ -9,15 +9,19 @@ Unpacking and Installation -- quick overview
 ==========================
 
 In this release, the GDB debugger sources, the generic GNU include
-files, the BFD ("binary file description") library, the readline library,
-and other libraries all have directories of their own underneath
-the gdb-4.9 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 gdb-4.9.tar.z or gdb-4.9.tar.Z file, you'll find
-a directory called `gdb-4.9', which contains:
+files, the BFD ("binary file description") library, the readline
+library, and other libraries all have directories of their own
+underneath the gdb-4.13 directory.  The idea is that a variety of GNU
+tools can share a common copy of these things.  Be aware of variation
+over time--for example don't try to build gdb with a copy of bfd from
+a release other than the gdb release (such as a binutils or gas
+release), especially if the releases are more than a few weeks apart.
+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 gdb-4.13.tar.gz file, you'll find a directory
+called `gdb-4.13', which contains:
 
   Makefile.in      config.sub*      glob/            opcodes/
   README           configure*       include/         readline/
@@ -27,7 +31,7 @@ a directory called `gdb-4.9', which contains:
 
 To build GDB, you can just do:
 
-       cd gdb-4.9
+       cd gdb-4.13
        ./configure
        make
        cp gdb/gdb /usr/local/bin/gdb   (or wherever you want)
@@ -47,9 +51,9 @@ More Documentation
 ******************
 
    The GDB 4 release includes an already-formatted reference card,
-ready for printing with PostScript or GhostScript, in the `gdb'
-subdirectory of the main source directory.  (In `gdb-4.9/gdb/refcard.ps'.)
-If you can use PostScript or GhostScript with your printer, you can
+ready for printing with PostScript or Ghostscript, in the `gdb'
+subdirectory of the main source directory.  (In `gdb-4.13/gdb/refcard.ps'.)
+If you can use PostScript or Ghostscript with your printer, you can
 print the reference card immediately with `refcard.ps'.
 
    The release also includes the source for the reference card.  You
@@ -82,7 +86,7 @@ distribution.
 Info formatting programs, such as `texinfo-format-buffer' or `makeinfo'.
 
    If you have `makeinfo' installed, and are in the top level GDB
-source directory (`gdb-4.9', in the case of version 4.9), you can make
+source directory (`gdb-4.13', in the case of version 4.13), you can make
 the Info file by typing:
 
      cd gdb
@@ -108,7 +112,7 @@ format.  On its own, TeX cannot read, much less typeset a Texinfo file.
 
    If you have TeX and a DVI printer program installed, you can typeset
 and print this manual.  First switch to the the `gdb' subdirectory of
-the main source directory (for example, to `gdb-4.9/gdb') and then type:
+the main source directory (for example, to `gdb-4.13/gdb') and then type:
 
      make gdb.dvi
 
@@ -124,42 +128,42 @@ preparing GDB for installation; you can then use `make' to build the
 a single directory, whose name is usually composed by appending the
 version number to `gdb'.
 
-   For example, the GDB version 4.9 distribution is in the `gdb-4.9'
+   For example, the GDB version 4.13 distribution is in the `gdb-4.13'
 directory.  That directory contains:
 
-`gdb-4.9/configure (and supporting files)'
+`gdb-4.13/configure (and supporting files)'
      script for configuring GDB and all its supporting libraries.
 
-`gdb-4.9/gdb'
+`gdb-4.13/gdb'
      the source specific to GDB itself
 
-`gdb-4.9/bfd'
+`gdb-4.13/bfd'
      source for the Binary File Descriptor library
 
-`gdb-4.9/include'
+`gdb-4.13/include'
      GNU include files
 
-`gdb-4.9/libiberty'
+`gdb-4.13/libiberty'
      source for the `-liberty' free software library
 
-`gdb-4.9/opcodes'
+`gdb-4.13/opcodes'
      source for the library of opcode tables and disassemblers
 
-`gdb-4.9/readline'
+`gdb-4.13/readline'
      source for the GNU command-line interface
 
-`gdb-4.9/glob'
+`gdb-4.13/glob'
      source for the GNU filename pattern-matching subroutine
 
-`gdb-4.9/mmalloc'
+`gdb-4.13/mmalloc'
      source for the GNU memory-mapped malloc package
 
-'gdb-4.9/sim'
+'gdb-4.13/sim'
      source for some simulators (z8000, H8/300, H8/500, etc)
 
    The simplest way to configure and build GDB is to run `configure'
 from the `gdb-VERSION-NUMBER' source directory, which in this example
-is the `gdb-4.9' directory.
+is the `gdb-4.13' directory.
 
    First switch to the `gdb-VERSION-NUMBER' source directory if you are
 not already in it; then run `configure'.  Pass the identifier for the
@@ -167,7 +171,7 @@ platform on which GDB will run as an argument.
 
    For example:
 
-     cd gdb-4.9
+     cd gdb-4.13
      ./configure HOST
      make
 
@@ -186,8 +190,8 @@ you may need to run `sh' on it explicitly:
      sh configure HOST
 
    If you run `configure' from a directory that contains source
-directories for multiple libraries or programs, such as the `gdb-4.9'
-source directory for version 4.9, `configure' creates configuration
+directories for multiple libraries or programs, such as the `gdb-4.13'
+source directory for version 4.13, `configure' creates configuration
 files for every directory level underneath (unless you tell it not to,
 with the `--norecursion' option).
 
@@ -195,10 +199,10 @@ with the `--norecursion' option).
 directories in the GDB distribution, if you only want to configure that
 subdirectory; but be sure to specify a path to it.
 
-   For example, with version 4.9, type the following to configure only
+   For example, with version 4.13, type the following to configure only
 the `bfd' subdirectory:
 
-     cd gdb-4.9/bfd
+     cd gdb-4.13/bfd
      ../configure HOST
 
    You can install `gdb' anywhere; it has no hardwired paths. However,
@@ -227,13 +231,13 @@ directory.  If the path to `configure' would be the same as the
 argument to `--srcdir', you can leave out the `--srcdir' option; it
 will be assumed.)
 
-   For example, with version 4.9, you can build GDB in a separate
+   For example, with version 4.13, you can build GDB in a separate
 directory for a Sun 4 like this:
 
-     cd gdb-4.9
+     cd gdb-4.13
      mkdir ../gdb-sun4
      cd ../gdb-sun4
-     ../gdb-4.9/configure sun4
+     ../gdb-4.13/configure sun4
      make
 
    When `configure' builds a configuration using a remote source
@@ -254,8 +258,8 @@ called `configure' (or one of its subdirectories).
 
    The `Makefile' that `configure' generates in each source directory
 also runs recursively.  If you type `make' in a source directory such
-as `gdb-4.9' (or in a separate configured directory configured with
-`--srcdir=PATH/gdb-4.9'), you will build all the required libraries,
+as `gdb-4.13' (or in a separate configured directory configured with
+`--srcdir=PATH/gdb-4.13'), you will build all the required libraries,
 and then build GDB.
 
    When you have multiple hosts or targets configured in separate
@@ -298,7 +302,7 @@ you can use it to test your guesses on abbreviations--for example:
      Invalid configuration `i786v': machine `i786v' not recognized
 
 `config.sub' is also distributed in the GDB source directory
-(`gdb-4.9', for version 4.9).
+(`gdb-4.13', for version 4.13).
 
 
 `configure' options
@@ -366,13 +370,7 @@ GDB or its supporting libraries.
 Languages other than C
 =======================
 
-GDB provides some support for debugging C++ progams.  Partial Modula-2
-and Chill support is now in GDB.  GDB should work with FORTRAN programs.
-(If you have problems, please send a bug report; you may have to refer to
-some FORTRAN variables with a trailing underscore).  Pascal programs which
-use sets, subranges, file variables, or nested functions will not
-currently work.
-
+See the GDB manual (doc/gdb.texinfo) for information on this.
 
 Kernel debugging
 =================
@@ -429,7 +427,7 @@ Reporting Bugs
 The correct address for reporting bugs found in gdb is
 "bug-gdb@prep.ai.mit.edu".  Please email all bugs, and all requests for
 help with GDB, to that address.  Please include the GDB version number
-(e.g. gdb-4.9), and how you configured it (e.g. "sun4" or "mach386
+(e.g. gdb-4.13), and how you configured it (e.g. "sun4" or "mach386
 host, i586-intel-synopsys target").  If you include the banner that GDB
 prints when it starts up, that will give us enough information.
 
@@ -438,24 +436,52 @@ section of the GDB manual (gdb/doc/gdb.texinfo).
 
 Known bugs:
 
-  * Under Ultrix 4.2 (DECstation-3100), we have seen problems with backtraces
-    after interrupting the inferior out of a read().  The problem is caused by
-    ptrace() returning an incorrect value for register 30.  As far as we can
-    tell, this is a kernel problem.  Any help with this would be greatly
-    appreciated.
-
-  * On the SPARC GDB reports incorrect values of struct arguments to
-    functions, for the seventh and subsequent arguments.  We have been looking
-    at this but no fix is available yet.
+  * Under Ultrix 4.2 (DECstation-3100) or Alphas under OSF/1, we have
+    seen problems with backtraces after interrupting the inferior out
+    of a read().  The problem is caused by ptrace() returning an
+    incorrect value for the frame pointer register (register 15 or
+    30).  As far as we can tell, this is a kernel problem.  Any help
+    with this would be greatly appreciated.
 
   * On DECstations there are warnings about shift counts out of range in
     various BFD modules.  None of them is a cause for alarm, they are actually
     a result of bugs in the DECstation compiler.
 
-  * On Solaris using the "run" command when the program is already running
-    restarts the program, but may leave a core dump from the previous
-    execution in the current directory.  Other SVR4 based systems don't seem
-    to have this problem, using the same gdb source code.
+  * Notes for the DEC Alpha using OSF/1:
+    The debugging output of native cc has two known problems; we view these
+    as compiler bugs.
+    The linker miscompacts symbol tables, which causes gdb to confuse the
+    type of variables or results in `struct <illegal>' type outputs.
+    dbx has the same problems with those executables.  A workaround is to
+    specify -Wl,-b when linking, but that will increase the executable size
+    considerably.
+    If a structure has incomplete type in one file (e.g. "struct foo *"
+    without a definition for "struct foo"), gdb will be unable to find the
+    structure definition from another file.
+    It has been reported that the Ultrix 4.3A compiler on decstations has the
+    same problems.
+
+    Under some circumstances OSF/1 shared libraries do get relocated to a
+    different address, but gdb cannot handle these relocations yet. If you
+    encounter problems while debugging executables which use shared libraries,
+    try to relink your executable with the -non_shared option when using cc
+    or with the -static option when using gcc.
+
+  * Notes for Solaris 2.x, using the SPARCworks cc compiler:
+    You have to compile your program with the -xs option of the SPARCworks
+    compiler to be able to debug your program with gdb.
+    Under Solaris 2.3 you also need patch 101409-03 (Jumbo linker patch).
+    Under Solaris 2.2, if you have patch 101052 installed, make sure
+    that it is at least at revision 101052-06.
+
+  * Notes for BSD/386:
+    To compile gdb-4.13 on BSD/386, you must run the configure script and
+    its subscripts with bash.  Here is an easy way to do this:
+
+       bash -c 'CONFIG_SHELL=/bin/bash ./configure'
+
+    (configure will report i386-unknown-bsd).  Then, compile with the
+    standard "make" command.
 
 GDB can produce warnings about symbols that it does not understand.  By
 default, these warnings are disabled.  You can enable them by executing
@@ -502,25 +528,25 @@ GDB Testsuite
 =============
 
 There is a dejagnu based testsuite available for testing your newly
-built gdb, or for regression testing gdb's with local modifications.
-The testsuite is distributed separately from the base gdb distribution
-for the convenience of people that wish to get either gdb or the testsuite
+built GDB, or for regression testing GDBs with local modifications.
+The testsuite is distributed separately from the base GDB distribution
+for the convenience of people that wish to get either GDB or the testsuite
 separately.
 
-The name of the testsuite is gdb-4.9-testsuite.tar.z.  You unpack it in the
-same directory in which you unpacked the base gdb distribution, and it
-will create and populate the directory gdb-4.9/gdb/testsuite.
+The name of the testsuite is gdb-4.13-testsuite.tar.gz.  You unpack it in the
+same directory in which you unpacked the base GDB distribution, and it
+will create and populate the directory gdb-4.13/gdb/testsuite.
 
 Running the testsuite requires the prior installation of dejagnu, which
 should be available via ftp.  Once dejagnu is installed, you can run
 the tests in one of two ways:
 
-  (1)  cd gdb-4.9/gdb          (assuming you also unpacked gdb)
+  (1)  cd gdb-4.13/gdb         (assuming you also unpacked gdb)
        make check
 
 or
 
-  (2)  cd gdb-4.9/gdb/testsuite
+  (2)  cd gdb-4.13/gdb/testsuite
        make            (builds the test executables)
        make site.exp   (builds the site specific file)
        runtest -tool gdb GDB=../gdb    (or GDB=<somepath> as appropriate)
@@ -528,7 +554,7 @@ or
 The second method gives you slightly more control in case of problems with
 building one or more test executables, in case you wish to remove some
 test executables before running the tests, or if you are using the testsuite
-'standalone', without it being part of the gdb source tree.
+'standalone', without it being part of the GDB source tree.
 
 See the dejagnu documentation for further details.
 
This page took 0.028303 seconds and 4 git commands to generate.