init: init nachos hw01, should pass jenkins os_group_20_hw job but fail on os_group_20_ta job

This commit is contained in:
TA
2024-09-19 18:59:13 +08:00
commit 6ad2fa368f
267 changed files with 71977 additions and 0 deletions

View File

@@ -0,0 +1,674 @@
.\" Copyright (c) 1991, 1992, 1993 Free Software Foundation \-*-Text-*-
.\" See section COPYING for conditions for redistribution
.TH cpp 1 "30apr1993" "GNU Tools" "GNU Tools"
.SH NAME
cccp, cpp \- The GNU C-Compatible Compiler Preprocessor.
.SH SYNOPSIS
.hy 0
.na
.TP
.B cccp
.RB "[\|" \-$ "\|]"
.RB "[\|" \-A \c
.I predicate\c
.RB [ (\c
.I value\c
.BR ) ]\|]
.RB "[\|" \-C "\|]"
.RB "[\|" \-D \c
.I name\c
.RB [ =\c
.I definition\c
\&]\|]
.RB "[\|" \-dD "\|]"
.RB "[\|" \-dM "\|]"
.RB "[\|" "\-I\ "\c
.I directory\c
\&\|]
.RB "[\|" \-H "\|]"
.RB "[\|" \-I\- "\|]"
.RB "[\|" "\-imacros\ "\c
.I file\c
\&\|]
.RB "[\|" "\-include\ "\c
.I file\c
\&\|]
.RB "[\|" "\-idirafter\ "\c
.I dir\c
\&\|]
.RB "[\|" "\-iprefix\ "\c
.I prefix\c
\&\|]
.RB "[\|" "\-iwithprefix\ "\c
.I dir\c
\&\|]
.RB "[\|" \-lang\-c "\|]"
.RB "[\|" \-lang\-c++ "\|]"
.RB "[\|" \-lang\-objc "\|]"
.RB "[\|" \-lang\-objc++ "\|]"
.RB "[\|" \-lint "\|]"
.RB "[\|" \-M\ [ \-MG "\|]]"
.RB "[\|" \-MM\ [ \-MG "\|]]"
.RB "[\|" \-MD\ \c
.I file\ \c
\&\|]
.RB "[\|" \-MMD\ \c
.I file\ \c
\&\|]
.RB "[\|" \-nostdinc "\|]"
.RB "[\|" \-nostdinc++ "\|]"
.RB "[\|" \-P "\|]"
.RB "[\|" \-pedantic "\|]"
.RB "[\|" \-pedantic\-errors "\|]"
.RB "[\|" \-traditional "\|]"
.RB "[\|" \-trigraphs "\|]"
.RB "[\|" \-U \c
.I name\c
\&\|]
.RB "[\|" \-undef "\|]"
.RB "[\|" \-Wtrigraphs "\|]"
.RB "[\|" \-Wcomment "\|]"
.RB "[\|" \-Wall "\|]"
.RB "[\|" \-Wtraditional "\|]"
.br
.RB "[\|" \c
.I infile\c
.RB | \- "\|]"
.RB "[\|" \c
.I outfile\c
.RB | \- "\|]"
.ad b
.hy 1
.SH DESCRIPTION
The C preprocessor is a \c
.I macro processor\c
\& that is used automatically by
the C compiler to transform your program before actual compilation. It is
called a macro processor because it allows you to define \c
.I macros\c
\&,
which are brief abbreviations for longer constructs.
The C preprocessor provides four separate facilities that you can use as
you see fit:
.TP
\(bu
Inclusion of header files. These are files of declarations that can be
substituted into your program.
.TP
\(bu
Macro expansion. You can define \c
.I macros\c
\&, which are abbreviations
for arbitrary fragments of C code, and then the C preprocessor will
replace the macros with their definitions throughout the program.
.TP
\(bu
Conditional compilation. Using special preprocessing directives, you
can include or exclude parts of the program according to various
conditions.
.TP
\(bu
Line control. If you use a program to combine or rearrange source files into
an intermediate file which is then compiled, you can use line control
to inform the compiler of where each source line originally came from.
.PP
C preprocessors vary in some details. For a full explanation of the
GNU C preprocessor, see the
.B info
file `\|\c
.B cpp.info\c
\&\|', or the manual
.I The C Preprocessor\c
\&. Both of these are built from the same documentation source file, `\|\c
.B cpp.texinfo\c
\&\|'. The GNU C
preprocessor provides a superset of the features of ANSI Standard C.
ANSI Standard C requires the rejection of many harmless constructs commonly
used by today's C programs. Such incompatibility would be inconvenient for
users, so the GNU C preprocessor is configured to accept these constructs
by default. Strictly speaking, to get ANSI Standard C, you must use the
options `\|\c
.B \-trigraphs\c
\&\|', `\|\c
.B \-undef\c
\&\|' and `\|\c
.B \-pedantic\c
\&\|', but in
practice the consequences of having strict ANSI Standard C make it
undesirable to do this.
Most often when you use the C preprocessor you will not have to invoke it
explicitly: the C compiler will do so automatically. However, the
preprocessor is sometimes useful individually.
When you call the preprocessor individually, either name
(\c
.B cpp\c
\& or \c
.B cccp\c
\&) will do\(em\&they are completely synonymous.
The C preprocessor expects two file names as arguments, \c
.I infile\c
\& and
\c
.I outfile\c
\&. The preprocessor reads \c
.I infile\c
\& together with any other
files it specifies with `\|\c
.B #include\c
\&\|'. All the output generated by the
combined input files is written in \c
.I outfile\c
\&.
Either \c
.I infile\c
\& or \c
.I outfile\c
\& may be `\|\c
.B \-\c
\&\|', which as \c
.I infile\c
\&
means to read from standard input and as \c
.I outfile\c
\& means to write to
standard output. Also, if \c
.I outfile\c
\& or both file names are omitted,
the standard output and standard input are used for the omitted file names.
.SH OPTIONS
Here is a table of command options accepted by the C preprocessor.
These options can also be given when compiling a C program; they are
passed along automatically to the preprocessor when it is invoked by
the compiler.
.TP
.B \-P
Inhibit generation of `\|\c
.B #\c
\&\|'-lines with line-number information in
the output from the preprocessor. This might be
useful when running the preprocessor on something that is not C code
and will be sent to a program which might be confused by the
`\|\c
.B #\c
\&\|'-lines.
.TP
.B \-C
Do not discard comments: pass them through to the output file.
Comments appearing in arguments of a macro call will be copied to the
output before the expansion of the macro call.
.TP
.B \-traditional
Try to imitate the behavior of old-fashioned C, as opposed to ANSI C.
.TP
.B \-trigraphs
Process ANSI standard trigraph sequences. These are three-character
sequences, all starting with `\|\c
.B ??\c
\&\|', that are defined by ANSI C to
stand for single characters. For example, `\|\c
.B ??/\c
\&\|' stands for
`\|\c
.BR "\e" "\|',"
so `\|\c
.B '??/n'\c
\&\|' is a character constant for a newline.
Strictly speaking, the GNU C preprocessor does not support all
programs in ANSI Standard C unless `\|\c
.B \-trigraphs\c
\&\|' is used, but if
you ever notice the difference it will be with relief.
You don't want to know any more about trigraphs.
.TP
.B \-pedantic
Issue warnings required by the ANSI C standard in certain cases such
as when text other than a comment follows `\|\c
.B #else\c
\&\|' or `\|\c
.B #endif\c
\&\|'.
.TP
.B \-pedantic\-errors
Like `\|\c
.B \-pedantic\c
\&\|', except that errors are produced rather than
warnings.
.TP
.B \-Wtrigraphs
Warn if any trigraphs are encountered (assuming they are enabled).
.TP
.B \-Wcomment
.TP
.B \-Wcomments
Warn whenever a comment-start sequence `\|\c
.B /*\c
\&\|' appears in a comment.
(Both forms have the same effect).
.TP
.B \-Wall
Requests both `\|\c
.B \-Wtrigraphs\c
\&\|' and `\|\c
.B \-Wcomment\c
\&\|' (but not
`\|\c
.B \-Wtraditional\c
\&\|').
.TP
.B \-Wtraditional
Warn about certain constructs that behave differently in traditional and
ANSI C.
.TP
.BI "\-I " directory\c
\&
Add the directory \c
.I directory\c
\& to the end of the list of
directories to be searched for header files.
This can be used to override a system header file, substituting your
own version, since these directories are searched before the system
header file directories. If you use more than one `\|\c
.B \-I\c
\&\|' option,
the directories are scanned in left-to-right order; the standard
system directories come after.
.TP
.B \-I\-
Any directories specified with `\|\c
.B \-I\c
\&\|' options before the `\|\c
.B \-I\-\c
\&\|'
option are searched only for the case of `\|\c
.B #include "\c
.I file\c
\&"\c
\&\|';
they are not searched for `\|\c
.B #include <\c
.I file\c
\&>\c
\&\|'.
If additional directories are specified with `\|\c
.B \-I\c
\&\|' options after
the `\|\c
.B \-I\-\c
\&\|', these directories are searched for all `\|\c
.B #include\c
\&\|'
directives.
In addition, the `\|\c
.B \-I\-\c
\&\|' option inhibits the use of the current
directory as the first search directory for `\|\c
.B #include "\c
.I file\c
\&"\c
\&\|'.
Therefore, the current directory is searched only if it is requested
explicitly with `\|\c
.B \-I.\c
\&\|'. Specifying both `\|\c
.B \-I\-\c
\&\|' and `\|\c
.B \-I.\c
\&\|'
allows you to control precisely which directories are searched before
the current one and which are searched after.
.TP
.B \-nostdinc
Do not search the standard system directories for header files.
Only the directories you have specified with `\|\c
.B \-I\c
\&\|' options
(and the current directory, if appropriate) are searched.
.TP
.B \-nostdinc++
Do not search for header files in the C++ specific standard
directories, but do still search the other standard directories.
(This option is used when building libg++.)
.TP
.BI "\-D " "name"\c
\&
Predefine \c
.I name\c
\& as a macro, with definition `\|\c
.B 1\c
\&\|'.
.TP
.BI "\-D " "name" = definition
\&
Predefine \c
.I name\c
\& as a macro, with definition \c
.I definition\c
\&.
There are no restrictions on the contents of \c
.I definition\c
\&, but if
you are invoking the preprocessor from a shell or shell-like program
you may need to use the shell's quoting syntax to protect characters
such as spaces that have a meaning in the shell syntax. If you use more than
one `\|\c
.B \-D\c
\&\|' for the same
.I name\c
\&, the rightmost definition takes effect.
.TP
.BI "\-U " "name"\c
\&
Do not predefine \c
.I name\c
\&. If both `\|\c
.B \-U\c
\&\|' and `\|\c
.B \-D\c
\&\|' are
specified for one name, the `\|\c
.B \-U\c
\&\|' beats the `\|\c
.B \-D\c
\&\|' and the name
is not predefined.
.TP
.B \-undef
Do not predefine any nonstandard macros.
.TP
.BI "\-A " "name(" value )
Assert (in the same way as the \c
.B #assert\c
\& directive)
the predicate \c
.I name\c
\& with tokenlist \c
.I value\c
\&. Remember to escape or quote the parentheses on
shell command lines.
You can use `\|\c
.B \-A-\c
\&\|' to disable all predefined assertions; it also
undefines all predefined macros.
.TP
.B \-dM
Instead of outputting the result of preprocessing, output a list of
`\|\c
.B #define\c
\&\|' directives for all the macros defined during the
execution of the preprocessor, including predefined macros. This gives
you a way of finding out what is predefined in your version of the
preprocessor; assuming you have no file `\|\c
.B foo.h\c
\&\|', the command
.sp
.br
touch\ foo.h;\ cpp\ \-dM\ foo.h
.br
.sp
will show the values of any predefined macros.
.TP
.B \-dD
Like `\|\c
.B \-dM\c
\&\|' except in two respects: it does \c
.I not\c
\& include the
predefined macros, and it outputs \c
.I both\c
\& the `\|\c
.B #define\c
\&\|'
directives and the result of preprocessing. Both kinds of output go to
the standard output file.
.PP
.TP
.BR \-M\ [ \-MG ]
Instead of outputting the result of preprocessing, output a rule
suitable for \c
.B make\c
\& describing the dependencies of the main
source file. The preprocessor outputs one \c
.B make\c
\& rule containing
the object file name for that source file, a colon, and the names of
all the included files. If there are many included files then the
rule is split into several lines using `\|\c
.B \\\\\c
\&\|'-newline.
`\|\c
.B \-MG\c
\&\|' says to treat missing header files as generated files and assume \c
they live in the same directory as the source file. It must be specified \c
in addition to `\|\c
.B \-M\c
\&\|'.
This feature is used in automatic updating of makefiles.
.TP
.BR \-MM\ [ \-MG ]
Like `\|\c
.B \-M\c
\&\|' but mention only the files included with `\|\c
.B #include
"\c
.I file\c
\&"\c
\&\|'. System header files included with `\|\c
.B #include
<\c
.I file\c
\&>\c
\&\|' are omitted.
.TP
.BI \-MD\ file
Like `\|\c
.B \-M\c
\&\|' but the dependency information is written to `\|\c
.I file\c
\&\|'. This is in addition to compiling the file as
specified\(em\&`\|\c
.B \-MD\c
\&\|' does not inhibit ordinary compilation the way
`\|\c
.B \-M\c
\&\|' does.
When invoking gcc, do not specify the `\|\c
.I file\c
\&\|' argument. Gcc will create file names made by replacing `\|\c
.B .c\c
\&\|' with `\|\c
.B .d\c
\&\|' at the end of the input file names.
In Mach, you can use the utility \c
.B md\c
\& to merge multiple files
into a single dependency file suitable for using with the `\|\c
.B make\c
\&\|'
command.
.TP
.BI \-MMD\ file
Like `\|\c
.B \-MD\c
\&\|' except mention only user header files, not system
header files.
.TP
.B \-H
Print the name of each header file used, in addition to other normal
activities.
.TP
.BI "\-imacros " "file"\c
\&
Process \c
.I file\c
\& as input, discarding the resulting output, before
processing the regular input file. Because the output generated from
\c
.I file\c
\& is discarded, the only effect of `\|\c
.B \-imacros \c
.I file\c
\&\c
\&\|' is to
make the macros defined in \c
.I file\c
\& available for use in the main
input. The preprocessor evaluates any `\|\c
.B \-D\c
\&\|' and `\|\c
.B \-U\c
\&\|' options
on the command line before processing `\|\c
.B \-imacros \c
.I file\c
\&\|' \c
\&.
.TP
.BI "\-include " "file"
Process
.I file
as input, and include all the resulting output,
before processing the regular input file.
.TP
.BI "-idirafter " "dir"\c
\&
Add the directory \c
.I dir\c
\& to the second include path. The directories
on the second include path are searched when a header file is not found
in any of the directories in the main include path (the one that
`\|\c
.B \-I\c
\&\|' adds to).
.TP
.BI "-iprefix " "prefix"\c
\&
Specify \c
.I prefix\c
\& as the prefix for subsequent `\|\c
.B \-iwithprefix\c
\&\|'
options.
.TP
.BI "-iwithprefix " "dir"\c
\&
Add a directory to the second include path. The directory's name is
made by concatenating \c
.I prefix\c
\& and \c
.I dir\c
\&, where \c
.I prefix\c
\&
was specified previously with `\|\c
.B \-iprefix\c
\&\|'.
.TP
.B \-lang-c
.TP
.B \-lang-c++
.TP
.B \-lang-objc
.TP
.B \-lang-objc++
Specify the source language. `\|\c
.B \-lang-c++\c
\&\|' makes the preprocessor
handle C++ comment syntax, and includes extra default include
directories for C++, and `\|\c
.B \-lang-objc\c
\&\|' enables the Objective C
`\|\c
.B #import\c
\&\|' directive. `\|\c
.B \-lang-c\c
\&\|' explicitly turns off both of
these extensions, and `\|\c
.B \-lang-objc++\c
\&\|' enables both.
These options are generated by the compiler driver \c
.B gcc\c
\&, but not
passed from the `\|\c
.B gcc\c
\&\|' command line.
.TP
.B \-lint
Look for commands to the program checker \c
.B lint\c
\& embedded in
comments, and emit them preceded by `\|\c
.B #pragma lint\c
\&\|'. For example,
the comment `\|\c
.B /* NOTREACHED */\c
\&\|' becomes `\|\c
.B #pragma lint
NOTREACHED\c
\&\|'.
This option is available only when you call \c
.B cpp\c
\& directly;
\c
.B gcc\c
\& will not pass it from its command line.
.TP
.B \-$
Forbid the use of `\|\c
.B $\c
\&\|' in identifiers. This was formerly required for strict conformance
to the C Standard before the standard was corrected. \c
This option is available only when you call \c
.B cpp\c
\& directly;
.B gcc\c
\& will not pass it from its command line.
.SH "SEE ALSO"
.RB "`\|" Cpp "\|'"
entry in
.B info\c
\&;
.I The C Preprocessor\c
, Richard M. Stallman.
.br
.BR gcc "(" 1 ");"
.RB "`\|" Gcc "\|'"
entry in
.B info\c
\&;
.I
Using and Porting GNU CC (for version 2.0)\c
, Richard M. Stallman.
.SH COPYING
Copyright (c) 1991, 1992, 1993 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,127 @@
.\" Copyright (c) 1997 Free Software Foundation
.\" See COPYING for conditions for redistribution
.TH addr2line 1 "27 March 1997" "Cygnus Solutions" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
addr2line \- convert addresses into file names and line numbers
.SH SYNOPSIS
.hy 0
.na
.TP
.B addr2line
.RB "[\|" "\-b\ "\c
.I bfdname\c
.RB " | " "\-\-target="\c
.I bfdname\c
\&\|]
.RB "[\|" \-C | \-\-demangle "\|]"
.RB "[\|" "\-e\ "\c
.I filename\c
.RB " | " "\-\-exe="\c
.I filename\c
\&\|]
.RB "[\|" \-f | \-\-functions "\|]"
.RB "[\|" \-s | \-\-basenames "\|]"
.RB "[\|" \-H | \-\-help "\|]"
.RB "[\|" \-V | \-\-version "\|]"
.RB "[\|" addr addr ... "\|]"
.ad b
.hy 1
.SH DESCRIPTION
\c
.B addr2line
translates program addresses into file names and line numbers. Given
an address and an executable, it uses the debugging information in the
executable to figure out which file name and line number are
associated with a given address.
The executable to use is specified with the
.B \-e
option. The default is
.B a.out\c
\&.
.B addr2line
has two modes of operation.
In the first, hexadecimal addresses are specified on the command line,
and
.B addr2line
displays the file name and line number for each address.
In the second,
.B addr2line
reads hexadecimal addresses from standard input, and prints the file
name and line number for each address on standard output. In this
mode,
.B addr2line
may be used in a pipe to convert dynamically chosen addresses.
The format of the output is FILENAME:LINENO. The file name and line
number for each address is printed on a separate line. If the
.B \-f
option is used, then each FILENAME:LINENO line is preceded by a
FUNCTIONNAME line which is the name of the function containing the
address.
If the file name or function name can not be determined,
.B addr2line
will print two question marks in their place. If the line number can
not be determined,
.B addr2line
will print 0.
.SH OPTIONS
.TP
.BI "\-b " "bfdname"\c
.TP
.BI "\-\-target=" "bfdname"
Specify the object-code format for the object files to be
\c
.I bfdname\c
\&.
.TP
.B \-C
.TP
.B \-\-demangle
Decode (\fIdemangle\fP) low-level symbol names into user-level names.
Besides removing any initial underscore prepended by the system, this
makes C++ function names readable.
.TP
.BI "\-e " "filename"\c
.TP
.BI "\-\-exe=" "filename"
Specify the name of the executable for which addresses should be
translated. The default file is
.B a.out\c
\&.
.TP
.B \-f
.TP
.B \-\-functions
Display function names as well as file and line number information.
.TP
.B \-s
.TP
.B \-\-basenames
Display only the base of each file name.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (October 1991).

View File

@@ -0,0 +1,533 @@
.\" Copyright (c) 1991, 1992, 1993, 1995, 1998, 1999 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH ar 1 "1999" "Cygnus Solutions" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
ar \- create, modify, and extract from archives.
.SH SYNOPSIS
.hy 0
.na
.BR ar " [\|" "-" "\|]"\c
.I {dmpqrtx}[abcfilNoPsSuvV] \c
[\|\c
.I membername\c
\&\|] \c
[\|\c
.I count\c
\&\|] \c
.I archive\c
\& \c
.I files\c
\&.\|.\|.
.ad b
.hy 1
.SH DESCRIPTION
The GNU \c
.B ar\c
\& program creates, modifies, and extracts from
archives. An \c
.I archive\c
\& is a single file holding a collection of
other files in a structure that makes it possible to retrieve
the original individual files (called \c
.I members\c
\& of the archive).
The original files' contents, mode (permissions), timestamp, owner, and
group are preserved in the archive, and may be reconstituted on
extraction.
GNU \c
.B ar\c
\& can maintain archives whose members have names of any
length; however, depending on how \c
.B ar\c
\& is configured on your
system, a limit on member-name length may be imposed (for compatibility
with archive formats maintained with other tools). If it exists, the
limit is often 15 characters (typical of formats related to a.out) or 16
characters (typical of formats related to coff).
\c
.B ar\c
\& is considered a binary utility because archives of this sort
are most often used as \c
.I libraries\c
\& holding commonly needed
subroutines.
\c
.B ar\c
\& will create an index to the symbols defined in relocatable
object modules in the archive when you specify the modifier `\|\c
.B s\c
\|'.
Once created, this index is updated in the archive whenever \c
.B ar\c
\&
makes a change to its contents (save for the `\|\c
.B q\c
\|' update operation).
An archive with such an index speeds up linking to the library, and
allows routines in the library to call each other without regard to
their placement in the archive.
You may use `\|\c
.B nm \-s\c
\|' or `\|\c
.B nm \-\-print\-armap\c
\|' to list this index
table. If an archive lacks the table, another form of \c
.B ar\c
\& called
\c
.B ranlib\c
\& can be used to add just the table.
\c
.B ar\c
\& insists on at least two arguments to execute: one
keyletter specifying the \c
.I operation\c
\& (optionally accompanied by other
keyletters specifying \c
.I modifiers\c
\&), and the archive name to act on.
Most operations can also accept further \c
.I files\c
\& arguments,
specifying particular files to operate on.
.SH OPTIONS
GNU \c
.B ar\c
\& allows you to mix the operation code \c
.I p\c
\& and modifier
flags \c
.I mod\c
\& in any order, within the first command-line argument.
If you wish, you may begin the first command-line argument with a
dash.
The \c
.I p\c
\& keyletter specifies what operation to execute; it may be
any of the following, but you must specify only one of them:
.TP
.B d
\c
.I Delete\c
\& modules from the archive. Specify the names of modules to
be deleted as \c
.I files\c
\&; the archive is untouched if you
specify no files to delete.
If you specify the `\|\c
.B v\c
\|' modifier, \c
.B ar\c
\& will list each module
as it is deleted.
.TP
.B m
Use this operation to \c
.I move\c
\& members in an archive.
The ordering of members in an archive can make a difference in how
programs are linked using the library, if a symbol is defined in more
than one member.
If no modifiers are used with \c
.B m\c
\&, any members you name in the
\c
.I files\c
\& arguments are moved to the \c
.I end\c
\& of the archive;
you can use the `\|\c
.B a\c
\|', `\|\c
.B b\c
\|', or `\|\c
.B i\c
\|' modifiers to move them to a
specified place instead.
.TP
.B p
\c
.I Print\c
\& the specified members of the archive, to the standard
output file. If the `\|\c
.B v\c
\|' modifier is specified, show the member
name before copying its contents to standard output.
If you specify no \c
.I files\c
\&, all the files in the archive are printed.
.TP
.B q
\c
.I Quick append\c
\&; add \c
.I files\c
\& to the end of \c
.I archive\c
\&,
without checking for replacement.
The modifiers `\|\c
.B a\c
\|', `\|\c
.B b\c
\|', and `\|\c
.B i\c
\|' do \c
.I not\c
\& affect this
operation; new members are always placed at the end of the archive.
The modifier `\|\c
.B v\c
\|' makes \c
.B ar\c
\& list each file as it is appended.
Since the point of this operation is speed, the archive's symbol table
index is not updated, even if it already existed; you can use `\|\c
.B ar s\c
\|' or
\c
.B ranlib\c
\& explicitly to update the symbol table index.
However, too many different systems assume quick append rebuilds the
index, so GNU
.B ar
implements `\|\c
.B q\c
\|' as a synonym for `\|\c
.B r\c
\|'.
.TP
.B r
Insert \c
.I files\c
\& into \c
.I archive\c
\& (with \c
.I replacement\c
\&). This
operation differs from `\|\c
.B q\c
\|' in that any previously existing members
are deleted if their names match those being added.
If one of the files named in \c
.I files\c
\& doesn't exist, \c
.B ar\c
\&
displays an error message, and leaves undisturbed any existing members
of the archive matching that name.
By default, new members are added at the end of the file; but you may
use one of the modifiers `\|\c
.B a\c
\|', `\|\c
.B b\c
\|', or `\|\c
.B i\c
\|' to request
placement relative to some existing member.
The modifier `\|\c
.B v\c
\|' used with this operation elicits a line of
output for each file inserted, along with one of the letters `\|\c
.B a\c
\|' or
`\|\c
.B r\c
\|' to indicate whether the file was appended (no old member
deleted) or replaced.
.TP
.B t
Display a \c
.I table\c
\& listing the contents of \c
.I archive\c
\&, or those
of the files listed in \c
.I files\c
\& that are present in the
archive. Normally only the member name is shown; if you also want to
see the modes (permissions), timestamp, owner, group, and size, you can
request that by also specifying the `\|\c
.B v\c
\|' modifier.
If you do not specify any \c
.I files\c
\&, all files in the archive
are listed.
If there is more than one file with the same name (say, `\|\c
.B fie\c
\|') in
an archive (say `\|\c
.B b.a\c
\|'), `\|\c
.B ar t b.a fie\c
\|' will list only the
first instance; to see them all, you must ask for a complete
listing\(em\&in our example, `\|\c
.B ar t b.a\c
\|'.
.TP
.B x
\c
.I Extract\c
\& members (named \c
.I files\c
\&) from the archive. You can
use the `\|\c
.B v\c
\|' modifier with this operation, to request that
\c
.B ar\c
\& list each name as it extracts it.
If you do not specify any \c
.I files\c
\&, all files in the archive
are extracted.
.PP
A number of modifiers (\c
.I mod\c
\&) may immediately follow the \c
.I p\c
\&
keyletter, to specify variations on an operation's behavior:
.TP
.B a
Add new files \c
.I after\c
\& an existing member of the
archive. If you use the modifier \c
.B a\c
\&, the name of an existing archive
member must be present as the \c
.I membername\c
\& argument, before the
\c
.I archive\c
\& specification.
.TP
.B b
Add new files \c
.I before\c
\& an existing member of the
archive. If you use the modifier \c
.B b\c
\&, the name of an existing archive
member must be present as the \c
.I membername\c
\& argument, before the
\c
.I archive\c
\& specification. (same as `\|\c
.B i\c
\|').
.TP
.B c
\c
.I Create\c
\& the archive. The specified \c
.I archive\c
\& is always
created if it didn't exist, when you request an update. But a warning is
issued unless you specify in advance that you expect to create it, by
using this modifier.
.TP
.B f
Truncate names in the archive.
.B ar
will normally permit file names of any length. This will cause it to
create archives which are not compatible with the native
.B ar
program on some systems. If this is a concern, the
.B f
modifier may be used to truncate file names when putting them in the
archive.
.TP
.B i
Insert new files \c
.I before\c
\& an existing member of the
archive. If you use the modifier \c
.B i\c
\&, the name of an existing archive
member must be present as the \c
.I membername\c
\& argument, before the
\c
.I archive\c
\& specification. (same as `\|\c
.B b\c
\|').
.TP
.B l
This modifier is accepted but not used.
.TP
.B N
Uses the
.I count
parameter. This is used if there are multiple entries in the archive
with the same name. Extract or delete instance
.I count
of the given name from the archive.
.TP
.B o
Preserve the \c
.I original\c
\& dates of members when extracting them. If
you do not specify this modifier, files extracted from the archive
will be stamped with the time of extraction.
.TP
.B P
Use the full path name when matching names in the archive.
.B ar
can not create an archive with a full path name (such archives are not
POSIX complaint), but other archive creators can. This option will
cause
.B ar
to match file names using a complete path name, which can be
convenient when extracting a single file from an archive created by
another tool.
.TP
.B s
Write an object-file index into the archive, or update an existing one,
even if no other change is made to the archive. You may use this modifier
flag either with any operation, or alone. Running `\|\c
.B ar s\c
\|' on an
archive is equivalent to running `\|\c
.B ranlib\c
\|' on it.
.TP
.B S
Do not generate an archive symbol table. This can speed up building a
large library in several steps. The resulting archive can not be used
with the linker. In order to build a symbol table, you must omit the
`\|\c
.B S\c
\|' modifier on the last execution of `\|\c
.B ar\c
\|', or you must run `\|\c
.B ranlib\c
\|' on the archive.
.TP
.B u
Normally, \c
.B ar r\c
\&.\|.\|. inserts all files
listed into the archive. If you would like to insert \c
.I only\c
\& those
of the files you list that are newer than existing members of the same
names, use this modifier. The `\|\c
.B u\c
\|' modifier is allowed only for the
operation `\|\c
.B r\c
\|' (replace). In particular, the combination `\|\c
.B qu\c
\|' is
not allowed, since checking the timestamps would lose any speed
advantage from the operation `\|\c
.B q\c
\|'.
.TP
.B v
This modifier requests the \c
.I verbose\c
\& version of an operation. Many
operations display additional information, such as filenames processed,
when the modifier `\|\c
.B v\c
\|' is appended.
.TP
.B V
This modifier shows the version number of
.BR ar .
.PP
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
, Roland H. Pesch (October 1991).
.BR nm ( 1 )\c
\&,
.BR ranlib ( 1 )\c
\&.
.SH COPYING
Copyright (c) 1991, 1992, 1993, 1995, 1998, 1999 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,308 @@
.\" Copyright (c) 1991, 1992, 1996, 1997, 1998 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH as 1 "29 March 1996" "cygnus support" "GNU Development Tools"
.SH NAME
GNU as \- the portable GNU assembler.
.SH SYNOPSIS
.na
.B as
.RB "[\|" \-a "[\|" dhlns "\|]" \c
\&[\|\=\c
.I file\c
\&\|]\|]
.RB "[\|" \-D "\|]"
.RB "[\|" \-\-defsym\ SYM=VAL "\|]"
.RB "[\|" \-f "\|]"
.RB "[\|" \-\-gstabs "\|]"
.RB "[\|" \-I
.I path\c
\&\|]
.RB "[\|" \-K "\|]"
.RB "[\|" \-L "\|]"
.RB "[\|" \-M\ |\ \-\-mri "\|]"
.RB "[\|" \-o
.I objfile\c
\&\|]
.RB "[\|" \-R "\|]"
.RB "[\|" \-\-traditional\-format "\|]"
.RB "[\|" \-v "\|]"
.RB "[\|" \-w "\|]"
.RB "[\|" \-\^\- "\ |\ " \c
.I files\c
\&\|.\|.\|.\|]
.I i960-only options:
.br
.RB "[\|" \-ACA "\||\|" \-ACA_A "\||\|" \-ACB\c
.RB "\||\|" \-ACC "\||\|" \-AKA "\||\|" \-AKB\c
.RB "\||\|" \-AKC "\||\|" \-AMC "\|]"
.RB "[\|" \-b "\|]"
.RB "[\|" \-no-relax "\|]"
.I m680x0-only options:
.br
.RB "[\|" \-l "\|]"
.RB "[\|" \-mc68000 "\||\|" \-mc68010 "\||\|" \-mc68020 "\|]"
.ad b
.SH DESCRIPTION
GNU \c
.B as\c
\& is really a family of assemblers.
If you use (or have used) the GNU assembler on one architecture, you
should find a fairly similar environment when you use it on another
architecture. Each version has much in common with the others,
including object file formats, most assembler directives (often called
\c
.I pseudo-ops)\c
\& and assembler syntax.
For information on the syntax and pseudo-ops used by GNU \c
.B as\c
\&, see `\|\c
.B as\c
\|' entry in \c
.B info \c
(or the manual \c
.I
.I
Using as: The GNU Assembler\c
\&).
\c
.B as\c
\& is primarily intended to assemble the output of the GNU C
compiler \c
.B gcc\c
\& for use by the linker \c
.B ld\c
\&. Nevertheless,
we've tried to make \c
.B as\c
\& assemble correctly everything that the native
assembler would.
This doesn't mean \c
.B as\c
\& always uses the same syntax as another
assembler for the same architecture; for example, we know of several
incompatible versions of 680x0 assembly language syntax.
Each time you run \c
.B as\c
\& it assembles exactly one source
program. The source program is made up of one or more files.
(The standard input is also a file.)
If \c
.B as\c
\& is given no file names it attempts to read one input file
from the \c
.B as\c
\& standard input, which is normally your terminal. You
may have to type \c
.B ctl-D\c
\& to tell \c
.B as\c
\& there is no more program
to assemble. Use `\|\c
.B \-\^\-\c
\|' if you need to explicitly name the standard input file
in your command line.
.B as\c
\& may write warnings and error messages to the standard error
file (usually your terminal). This should not happen when \c
.B as\c
\& is
run automatically by a compiler. Warnings report an assumption made so
that \c
.B as\c
\& could keep assembling a flawed program; errors report a
grave problem that stops the assembly.
.SH OPTIONS
.TP
.BR \-a
Turn on assembly listings. There are various suboptions.
.B d
omits debugging directives.
.B h
includes the high level source code; this is only available if the
source file can be found, and the code was compiled with
.B \-g.
.B l
includes an assembly listing.
.B n
omits forms processing.
.B s
includes a symbol listing.
.B =
.I file
sets the listing file name; this must be the last suboption.
The default suboptions are
.B hls.
.TP
.B \-D
This option is accepted only for script compatibility with calls to
other assemblers; it has no effect on \c
.B as\c
\&.
.TP
.B \-\-defsym SYM=VALUE
Define the symbol SYM to be VALUE before assembling the input file.
VALUE must be an integer constant. As in C, a leading 0x indicates a
hexadecimal value, and a leading 0 indicates an octal value.
.TP
.B \-f
``fast''--skip preprocessing (assume source is compiler output).
.TP
.BI "\-I\ " path
Add
.I path
to the search list for
.B .include
directives.
.TP
.B \-\-gstabs
Generate stabs debugging information for each assembler line. This
may help debugging assembler code, if the debugger can handle it.
.TP
.B \-K
Issue warnings when difference tables altered for long displacements.
.TP
.B \-L
Keep (in symbol table) local symbols, starting with `\|\c
.B L\c
\|'
.TP
.B \-M, \-\-mri
Assemble in MRI compatibility mode.
.TP
.BI "\-o\ " objfile
Name the object-file output from \c
.B as
.TP
.B \-R
Fold data section into text section
.TP
.B \-\-traditional\-format
Use same format as native assembler, when possible.
.TP
.B \-v
Announce \c
.B as\c
\& version
.TP
.B \-W, \-\-no-warn
Suppress warning messages.
.TP
.B \-\-fatal\-warnings
Consider warnings to be fatal.
.TP
.B \-\-warn
Just warn on warnings.
.TP
.IR "\-\^\-" "\ |\ " "files\|.\|.\|."
Source files to assemble, or standard input (\c
.BR "\-\^\-" ")"
.TP
.BI \-A var
.I
(When configured for Intel 960.)
Specify which variant of the 960 architecture is the target.
.TP
.B \-b
.I
(When configured for Intel 960.)
Add code to collect statistics about branches taken.
.TP
.B \-no-relax
.I
(When configured for Intel 960.)
Do not alter compare-and-branch instructions for long displacements;
error if necessary.
.TP
.B \-l
.I
(When configured for Motorola 68000).
.br
Shorten references to undefined symbols, to one word instead of two.
.TP
.BR "\-mc68000" "\||\|" "\-mc68010" "\||\|" "\-mc68020"
.I
(When configured for Motorola 68000).
.br
Specify what processor in the 68000 family is the target (default 68020)
.PP
Options may be in any order, and may be
before, after, or between file names. The order of file names is
significant.
`\|\c
.B \-\^\-\c
\|' (two hyphens) by itself names the standard input file
explicitly, as one of the files for \c
.B as\c
\& to assemble.
Except for `\|\c
.B \-\^\-\c
\|' any command line argument that begins with a
hyphen (`\|\c
.B \-\c
\|') is an option. Each option changes the behavior of
\c
.B as\c
\&. No option changes the way another option works. An
option is a `\|\c
.B \-\c
\|' followed by one or more letters; the case of
the letter is important. All options are optional.
The `\|\c
.B \-o\c
\|' option expects exactly one file name to follow. The file
name may either immediately follow the option's letter (compatible
with older assemblers) or it may be the next command argument (GNU
standard).
These two command lines are equivalent:
.br
.B
as\ \ \-o\ \ my\-object\-file.o\ \ mumble.s
.br
.B
as\ \ \-omy\-object\-file.o\ \ mumble.s
.SH "SEE ALSO"
.RB "`\|" as "\|'"
entry in
.B
info\c
\&;
.I
Using as: The GNU Assembler\c
\&;
.BR gcc "(" 1 "),"
.BR ld "(" 1 ")."
.SH COPYING
Copyright (c) 1991, 1992 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,114 @@
.\" Copyright (c) 1991 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH c++filt 1 "June 1993" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
c++filt \- demangle C++ symbols
.SH SYNOPSIS
.hy 0
.na
.TP
.B c++filt
.RB "[\|" \-_ | \-\-strip-underscores "\|]"
.RB "[\|" "\-s {gnu,lucid,arm} " | " \-\-format={gnu,lucid,arm}" "\|]"
.RB "[\|" \-\-help "\|]"
.RB "[\|" \-\-version "\|]"
.RB "[\|" symbol "...\|]"
.SH DESCRIPTION
The C++ language provides function overloading, which means that you can
write many functions with the same name (providing each takes parameters
of different types). All C++ function names are encoded into a
low-level assembly label (this process is known as
.I mangling\c
). The
.B c++filt
program does the inverse mapping: it decodes (\fIdemangles\fR)
low-level names into user-level names so that the linker can keep
these overloaded functions from clashing.
.PP
Every alphanumeric word (consisting of letters, digits, underscores,
dollars, or periods) seen in the input is a potential label. If the
label decodes into a C++ name, the C++ name replaces the low-level
name in the output.
.PP
You can use
.B c++filt
to decipher individual symbols by specifying these symbols on the
command line.
.PP
If no
.B symbol
arguments are given,
.B c++filt
reads symbol names from the standard input and writes the demangled
names to the standard output. All results are printed on the standard
output.
.SH OPTIONS
.TP
.B \-_
.TP
.B \-\-strip\-underscores
On some systems, both the C and C++ compilers put an
underscore in front of every name. For example, the C name
.B foo
gets the low-level name
.BR _foo .
This option removes the leading underscore.
.TP
.B "\-s {gnu,lucid,arm}"
.TP
.B \-\-format={gnu,lucid,arm}
GNU
.B nm
can decode three different methods of mangling, used by different C++
compilers. This option selects which method it uses: the one used by
the GNU compiler, the one used by the Lucid compiler, or the one
specified by the C++ Annotated Reference Manual. The default is the
GNU style.
.TP
.B \-\-help
Print a summary of the options to
.B c++filt
and exit.
.TP
.B \-\-version
Print the version number of
.B c++filt
and exit.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (June 1993).
.SH COPYING
Copyright (c) 1993 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,110 @@
.\" Copyright (c) 1991, 1996 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH nlmconv 1 "March 1996" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
nlmconv \- converts object code into an NLM
.SH SYNOPSIS
.hy 0
.na
.TP
.B nlmconv
.RB "[\|" \-I\ \fIbfdname\fB\ |\ \-\-input\-target=\fIbfdname\fR "\|]"
.RB "[\|" \-O\ \fIbfdname\fB\ |\ \-\-output\-target=\fIbfdname\fR "\|]"
.RB "[\|" \-T\ \fIheaderfile\fB\ |\ \-\-header\-file=\fIheaderfile\fR "\|]"
.RB "[\|" \-V\ |\ \-\-version\fR "\|]"
.RB "[\|" \-\-help\fR "\|]"
.B infile
.B outfile
.SH DESCRIPTION
.B nlmconv
converts the relocatable object file
.B infile
into the NetWare Loadable Module
.BR outfile ,
optionally reading
.I headerfile
for NLM header information. For instructions on writing the NLM
command file language used in header files, see
.IR "The NetWare Tool Maker Specification Manual" ,
available from Novell, Inc.
.B nlmconv
currently works with i386 object files in
.BR COFF ,
.BR ELF ,
or
.B a.out
format, and with SPARC object files in
.B ELF
or
.B a.out
format.
.br
.B nlmconv
uses the GNU Binary File Descriptor library to read
.IR infile .
.SH OPTIONS
.TP
.B \-I \fIbfdname\fR, \fB\-\-input\-target=\fIbfdname
Consider the source file's object format to be
.IR bfdname ,
rather than attempting to deduce it.
.TP
.B \-O \fIbfdname\fR, \fB\-\-output\-target=\fIbfdname
Write the output file using the object format
.IR bfdname .
.B nlmconv
infers the output format based on the input format, e.g. for an i386
input file the output format is
.IR nlm32\-i386 .
.TP
.B \-T \fIheaderfile\fR, \fB\-\-header\-file=\fIheaderfile
Reads
.I headerfile
for NLM header information. For instructions on writing the NLM
command file language used in header files, see
.IR "The NetWare Tool Maker Specification Manual" ,
available from Novell, Inc.
.TP
.B \-V\fR, \fB\-\-version
Show the version number of
.B nlmconv
and exit.
.TP
.B \-h\fR, \fB\-\-help
Show a summary of the options to
.B nlmconv
and exit.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (June 1993).
.SH COPYING
Copyright (c) 1993 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,230 @@
.\" Copyright (c) 1991 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH nm 1 "5 November 1991" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
nm \- list symbols from object files.
.SH SYNOPSIS
.hy 0
.na
.TP
.B nm
.RB "[\|" \-a | \-\-debug\-syms "\|]"
.RB "[\|" \-g | \-\-extern\-only "\|]"
.RB "[\|" \-B "\|]"
.RB "[\|" \-C | \-\-demangle "\|]"
.RB "[\|" \-D | \-\-dynamic "\|]"
.RB "[\|" \-s | \-\-print\-armap "\|]"
.RB "[\|" \-o | \-\-print\-file\-name "\|]"
.RB "[\|" \-n | \-\-numeric\-sort "\|]"
.RB "[\|" \-p | \-\-no\-sort "\|]"
.RB "[\|" \-r | \-\-reverse\-sort "\|]"
.RB "[\|" \-\-size\-sort "\|]"
.RB "[\|" \-u | \-\-undefined\-only "\|]"
.RB "[\|" \-l | \-\-line\-numbers "\|]"
.RB "[\|" \-\-help "\|]"
.RB "[\|" \-\-version "\|]"
.RB "[\|" "\-t \fIradix" | \-\-radix=\fIradix "\|]"
.RB "[\|" \-P | --portability "\|]"
.RB "[\|" "\-f \fIformat" | \-\-format=\fIformat "\|]"
.RB "[\|" "\-\-target=\fIbfdname" "\|]"
.RB "[\|" \c
.I objfile\c
\&.\|.\|.\|]
.ad b
.hy 1
.SH DESCRIPTION
GNU \c
.B nm\c
\& lists the symbols from object files \c
.I objfile\c
\&. If no object files are given as arguments, \c
.B nm\c
\& assumes `\|\c
.B a.out\c
\|'.
.SH OPTIONS
The long and short forms of options, shown here as alternatives, are
equivalent.
.TP
.B \-A
.TP
.B \-o
.TP
.B \-\-print\-file\-name
Precede each symbol by the name of the input file where it was found,
rather than identifying the input file once only before all of its
symbols.
.TP
.B \-a
.TP
.B \-\-debug\-syms
Display debugger-only symbols; normally these are not listed.
.TP
.B \-B
The same as
.B \-\-format=bsd
(for compatibility with the MIPS \fBnm\fP).
.TP
.B \-C
.TP
.B \-\-demangle
Decode (\fIdemangle\fP) low-level symbol names into user-level names.
Besides removing any initial underscore prepended by the system, this
makes C++ function names readable.
.TP
.B \-D
.TP
.B \-\-dynamic
Display the dynamic symbols rather than the normal symbols. This is
only meaningful for dynamic objects, such as certain types of shared
libraries.
.TP
.B "\-f \fIformat"
Use the output format \fIformat\fP, which can be ``bsd'',
``sysv'', or ``posix''. The default is ``bsd''.
Only the first character of \fIformat\fP is significant; it can be
either upper or lower case.
.TP
.B \-g
.TP
.B \-\-extern\-only
Display only external symbols.
.TP
.B \-n
.TP
.B \-v
.TP
.B \-\-numeric\-sort
Sort symbols numerically by their addresses, not alphabetically by their
names.
.TP
.B \-p
.TP
.B \-\-no\-sort
Don't bother to sort the symbols in any order; just print them in the
order encountered.
.TP
.B \-P
.TP
.B \-\-portability
Use the POSIX.2 standard output format instead of the default format.
Equivalent to ``\-f posix''.
.TP
.B \-s
.TP
.B \-\-print\-armap
When listing symbols from archive members, include the index: a mapping
(stored in the archive by \c
.B ar\c
\& or \c
.B ranlib\c
\&) of what modules
contain definitions for what names.
.TP
.B \-r
.TP
.B \-\-reverse\-sort
Reverse the sense of the sort (whether numeric or alphabetic); let the
last come first.
.TP
.B \-\-size\-sort
Sort symbols by size. The size is computed as the difference between
the value of the symbol and the value of the symbol with the next higher
value. The size of the symbol is printed, rather than the value.
.TP
.B "\-t \fIradix"
.TP
.B "\-\-radix=\fIradix"
Use \fIradix\fP as the radix for printing the symbol values. It must be
``d'' for decimal, ``o'' for octal, or ``x'' for hexadecimal.
.TP
.BI "\-\-target=" "bfdname"
Specify an object code format other than your system's default format.
See
.BR objdump ( 1 ),
for information on listing available formats.
.TP
.B \-u
.TP
.B \-\-undefined\-only
Display only undefined symbols (those external to each object file).
.TP
.B \-l
.TP
.B \-\-line\-numbers
For each symbol, use debugging information to try to find a filename and
line number. For a defined symbol, look for the line number of the
address of the symbol. For an undefined symbol, look for the line
number of a relocation entry which refers to the symbol. If line number
information can be found, print it after the other symbol information.
.TP
.B \-V
.TP
.B \-\-version
Show the version number of
.B nm
and exit.
.TP
.B \-\-help
Show a summary of the options to
.B nm
and exit.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (October 1991);
.BR ar "(" 1 "),"
.BR objdump ( 1 ),
.BR ranlib "(" 1 ")."
.SH COPYING
Copyright (c) 1991 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,332 @@
.\" Copyright (c) 1991, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH objcopy 1 "05 April 2000" "Cygnus Solutions" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
objcopy \- copy and translate object files
.SH SYNOPSIS
.hy 0
.na
.TP
.B objcopy
.RB "[\|" \-F\ \fIbfdname\fR\ |\ \fB\-\-target=\fIbfdname\fR "\|]"
.RB "[\|" \-I\ \fIbfdname\fR\ |\ \fB\-\-input\-target=\fIbfdname\fR "\|]"
.RB "[\|" \-O\ \fIbfdname\fR\ |\ \fB\-\-output\-target=\fIbfdname\fR "\|]"
.RB "[\|" \-j\ \fIsectionname\fR\ |\ \fB\-\-only\-section=\fIsectionname\fR "\|]"
.RB "[\|" \-R\ \fIsectionname\fR\ |\ \fB\-\-remove\-section=\fIsectionname\fR "\|]"
.RB "[\|" \-S\fR\ |\ \fB\-\-strip\-all\fR "\|]"
.RB "[\|" \-g\fR\ |\ \fB\-\-strip\-debug\fR "\|]"
.RB "[\|" \-\-strip\-unneeded\fR "\|]"
.RB "[\|" \-K\ \fIsymbolname\fR\ |\ \fB\-\-keep\-symbol=\fIsymbolname\fR "\|]"
.RB "[\|" \-N\ \fIsymbolname\fR\ |\ \fB\-\-strip\-symbol=\fIsymbolname\fR "\|]"
.RB "[\|" \-L\ \fIsymbolname\fR\ |\ \fB\-\-localize\-symbol=\fIsymbolname\fR "\|]"
.RB "[\|" \-W\ \fIsymbolname\fR\ |\ \fB\-\-weaken\-symbol=\fIsymbolname\fR "\|]"
.RB "[\|" \-x\fR\ |\ \fB\-\-discard\-all\fR "\|]"
.RB "[\|" \-X\fR\ |\ \fB\-\-discard\-locals\fR "\|]"
.RB "[\|" \-b\ \fIbyte\fR\ |\ \fB\-\-byte=\fIbyte\fR "\|]"
.RB "[\|" \-i\ \fIinterleave\fR\ |\ \fB\-\-interleave=\fIinterleave\fR "\|]"
.RB "[\|" \-p\fR\ |\ \fB\-\-preserve\-dates\fR "\|]"
.RB "[\|" \-\-debugging "\|]"
.RB "[\|" \-\-gap\-fill=\fIval\fR "\|]"
.RB "[\|" \-\-pad\-to=\fIaddress\fR "\|]"
.RB "[\|" \-\-set\-start=\fIval\fR "\|]"
.RB "[\|" \-\-change\-start=\fIincr\fR "\|]"
.RB "[\|" \-\-change\-addresses=\fIincr\fR "\|]"
.RB "[\|" \-\-change\-section\-address\ \fIsection{=,+,-}val\fR "\|]"
.RB "[\|" \-\-change\-section\-lma\ \fIsection{=,+,-}val\fR "\|]"
.RB "[\|" \-\-change\-section\-vma\ \fIsection{=,+,-}val\fR "\|]"
.RB "[\|" \-\-change\-warnings\fR "\|]"
.RB "[\|" \-\-no\-change\-warnings\fR "\|]"
.RB "[\|" \-\-set\-section\-flags\ \fIsection=flags\fR "\|]"
.RB "[\|" \-\-add\-section\ \fIsectionname=filename\fR "\|]"
.RB "[\|" \-\-change\-leading\-char\fR "\|]"
.RB "[\|" \-\-remove\-leading\-char\fR "\|]"
.RB "[\|" \-\-redefine\-sym\ \fIold=new\fR "\|]"
.RB "[\|" \-\-weaken\fR "\|]"
.RB "[\|" \-v\ |\ \-\-verbose\fR "\|]"
.RB "[\|" \-V\ |\ \-\-version\fR "\|]"
.RB "[\|" \-\-help\fR "\|]"
.B infile
.RB "[\|" outfile\fR "\|]"
.SH DESCRIPTION
The GNU
.B objcopy
utility copies the contents of an object file to another.
.B objcopy
uses the GNU BFD Library to read and write the object files. It can
write the destination object file in a format different from that of
the source object file. The exact behavior of
.B objcopy
is controlled by command-line options.
.PP
.B objcopy
creates temporary files to do its translations and deletes them
afterward.
.B objcopy
uses BFD to do all its translation work; it knows about all the
formats BFD knows about, and thus is able to recognize most formats
without being told explicitly.
.PP
.B objcopy
can be used to generate S-records by using an output target of
.B srec
(e.g., use
.B -O srec).
.PP
.B objcopy
can be used to generate a raw binary file by using an output target of
.B binary
(e.g., use
.B -O binary).
When
.B objcopy
generates a raw binary file, it will essentially produce a memory dump
of the contents of the input object file. All symbols and relocation
information will be discarded. The memory dump will start at the
virtual address of the lowest section copied into the output file.
.PP
When generating an S-record or a raw binary file, it may be helpful to
use
.B -S
to remove sections containing debugging information. In some cases
.B -R
will be useful to remove sections which contain information which is
not needed by the binary file.
.PP
.I infile
and
.I outfile
are the source and output files respectively. If you do not specify
.IR outfile ,
.B objcopy
creates a temporary file and destructively renames the result with the
name of the input file.
.SH OPTIONS
.TP
.B \-I \fIbfdname\fR, \fB\-\-input\-target=\fIbfdname
Consider the source file's object format to be
.IR bfdname ,
rather than attempting to deduce it.
.TP
.B \-O \fIbfdname\fR, \fB\-\-output\-target=\fIbfdname
Write the output file using the object format
.IR bfdname .
.TP
.B \-F \fIbfdname\fR, \fB\-\-target=\fIbfdname
Use
.I bfdname
as the object format for both the input and the output file; i.e.
simply transfer data from source to destination with no translation.
.TP
.B \-j \fIsectionname\fR, \fB\-\-only\-section=\fIsectionname
Copy only the named section from the input file to the output file,
discarding all other sections. This option may be given more than
once. Note that using this option inappropriately may make the output
file unusable.
.TP
.B \-R \fIsectionname\fR, \fB\-\-remove-section=\fIsectionname
Remove the named section from the file. This option may be given more
than once. Note that using this option inappropriately may make the
output file unusable.
.TP
.B \-S\fR, \fB\-\-strip\-all
Do not copy relocation and symbol information from the source file.
.TP
.B \-g\fR, \fB\-\-strip\-debug
Do not copy debugging symbols from the source file.
.TP
.B \-\-strip\-unneeded
Strip all symbols that are not needed for relocation processing.
.TP
.B \-K \fIsymbolname\fR, \fB\-\-keep\-symbol=\fIsymbolname
Copy only symbol \fIsymbolname\fP from the source file. This option
may be given more than once.
.TP
.B \-N \fIsymbolname\fR, \fB\-\-strip\-symbol=\fIsymbolname
Do not copy symbol \fIsymbolname\fP from the source file. This option
may be given more than once.
.TP
.B \-L \fIsymbolname\fR, \fB\-\-localize\-symbol=\fIsymbolname
Make symbol \fIsymbolname\fP local to the file, so that it is not
visible externally. This option may be given more than once.
.TP
.B \-W \fIsymbolname\fR, \fB\-\-weaken\-symbol=\fIsymbolname
Make symbol \fIsymbolname\fP weak. This option may be given more than once.
.TP
.B \-x\fR, \fB\-\-discard\-all
Do not copy non-global symbols from the source file.
.TP
.B \-X\fR, \fB\-\-discard\-locals
Do not copy compiler-generated local symbols. (These usually start
with "L" or ".").
.TP
.B \-b \fIbyte\fR, \fB\-\-byte=\fIbyte
Keep only every \fIbyte\fPth byte of the input file (header data is
not affected). \fIbyte\fP can be in the range from 0 to the
interleave-1. This option is useful for creating files to program
ROMs. It is typically used with an srec output target.
.TP
.B \-i \fIinterleave\fR, \fB\-\-interleave=\fIinterleave
Only copy one out of every \fIinterleave\fP bytes. Which one to copy is
selected by the \fB\-b\fP or \fB\-\-byte\fP option. The default is 4.
The interleave is ignored if neither \fB\-b\fP nor \fB\-\-byte\fP is given.
.TP
.B \-p\fR, \fB\-\-preserve\-dates
Set the access and modification dates of the output file to be the same
as those of the input file.
.TP
.B \-\-debugging
Convert debugging information, if possible. This is not the default
because only certain debugging formats are supported, and the
conversion process can be time consuming.
.TP
.B \-\-gap\-fill=\fIval
Fill gaps between sections with \fIval\fP. This operation applies to
the \fIload address\fP (LMA) of the sections. It is done by increasing
the size of the section with the lower address, and filling in the extra
space created with \fIval\fP.
.TP
.B \-\-pad\-to=\fIaddress
Pad the output file up to the load address \fIaddress\fP. This is
done by increasing the size of the last section. The extra space is
filled in with the value specified by \fB\-\-gap\-fill\fP (default
zero).
.TP
.B \fB\-\-set\-start=\fIval
Set the start address of the new file to \fIval\fP. Not all object
file formats support setting the start address.
.TP
.B \fB\-\-change\-start=\fIincr\fR, \fB\-\-adjust\-start=\fIincr
Changes the start address by adding \fIincr\fP. Not all object file
formats support setting the start address.
.TP
.B \fB\-\-change\-addresses=\fIincr\fR, \fB\-\-adjust\-vma=\fIincr
Changes the address of all sections, as well as the start address, by
adding \fIincr\fP. Some object file formats do not permit section
addresses to be changed arbitrarily. Note that this does not relocate
the sections; if the program expects sections to be loaded at a
certain address, and this option is used to change the sections such
that they are loaded at a different address, the program may fail.
.TP
.B \fB\-\-change\-section\-address\ \fIsection{=,+,-}val\fR, \fB\-\-adjust\-section\-vma\ \fIsection{=,+,-}val
Set or changes the VMA and LMA addresses of the named \fIsection\fP.
If \fI=\fP is used, the section address is set to \fIval\fP.
Otherwise, \fIval\fP is added to or subtracted from the section
address. See the comments under \fB\-\-change\-addresses\fP, above. If
\fIsection\fP does not exist in the input file, a warning will be
issued, unless \fB\-\-no\-change\-warnings\fP is used.
.TP
.B \fB\-\-change\-section\-lma\ \fIsection{=,+,-}val
Set or change the LMA address of the named \fIsection\fP. If \fI=\fP is
used, the section address is set to \fIval\fP. Otherwise, \fIval\fP
is added to or subtracted from the section address. See the comments
under \fB\-\-change\-addresses\fP, above. If \fIsection\fP does not exist
in the input file, a warning will be issued, unless
\fB\-\-no\-change\-warnings\fP is used.
.TP
.B \fB\-\-change\-section\-vma\ \fIsection{=,+,-}val
Set or change the VMA address of the named \fIsection\fP. If \fI=\fP is
used, the section address is set to \fIval\fP. Otherwise, \fIval\fP
is added to or subtracted from the section address. See the comments
under \fB\-\-change\-addresses\fP, above. If \fIsection\fP does not exist
in the input file, a warning will be issued, unless
\fB\-\-no\-change\-warnings\fP is used.
.TP
.B \fB\-\-change\-warnings\fR, \fB\-\-adjust\-warnings
If \fB\-\-change\-section\-XXX\fP is used, and the named section does
not exist, issue a warning. This is the default.
.TP
.B \fB\-\-no\-change\-warnings\fR, \fB\-\-no\-adjust\-warnings
Do not issue a warning if \fB\-\-change\-section\-XXX\fP is used, even
if the named section does not exist.
.TP
.B \fB\-\-set\-section\-flags\ \fIsection=flags
Set the flags for the named section. The \fIflags\fP argument is a
comma separated string of flag names. The recognized names are
\fIalloc\fP, \fIcontents\fP, \fIload\fP, \fInoload\fP, \fIreadonly\fP,
\fIcode\fP, \fIdata\fP, \fIrom\fP, \fIshare\fP, and \fIdebug\fP. Not
all flags are meaningful for all object file formats.
.TP
.B \fB\-\-add\-section\ \fIsectionname=filename
Add a new section named \fIsectionname\fR while copying the file. The
contents of the new section are taken from the file \fIfilename\fR.
The size of the section will be the size of the file. This option
only works on file formats which can support sections with arbitrary
names.
.TP
.B \-\-change\-leading\-char
Some object file formats use special characters at the start of
symbols. The most common such character is underscore, which compilers
often add before every symbol. This option tells
.B objcopy
to change the leading character of every symbol when it converts
between object file formats. If the object file formats use the same
leading character, this option has no effect. Otherwise, it will add
a character, or remove a character, or change a character, as
appropriate.
.TP
.B \-\-remove\-leading\-char
If the first character of a global symbol is a special symbol leading
character used by the object file format, remove the character. The
most common symbol leading character is underscore. This option will
remove a leading underscore from all global symbols. This can be
useful if you want to link together objects of different file formats
with different conventions for symbol names. This is different from
\fB\-\-change\-leading\-char\fP because it always changes the symbol name
when appropriate, regardless of the object file format of the output
.TP
.B \-\-redefine\-sym\ \fIold=new
Change the name of symbol \fIold\fR to \fInew\fR. This can be useful
when one is trying link two things together for which you have no
source, and there are name collisions.
.TP
.B \-\-weaken
Change all global symbols in the file to be weak.
.TP
.B \-v\fR, \fB\-\-verbose
Verbose output: list all object files modified. In the case of
archives, "\fBobjcopy \-V\fR" lists all members of the archive.
.TP
.B \-V\fR, \fB\-\-version
Show the version number of
.B objcopy
and exit.
.TP
.B \-\-help
Show a summary of the options to
.B objcopy
and exit.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (June 1993).
.SH COPYING
Copyright (c) 1993, 94, 95, 96, 97, 98, 1999 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,412 @@
.\" Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 1998 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH objdump 1 "5 November 1991" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
objdump \- display information from object files.
.SH SYNOPSIS
.hy 0
.na
.TP
.B objdump
.RB "[\|" \-a | \-\-archive\-headers "\|]"
.RB "[\|" "\-b\ "\c
.I bfdname\c
.RB " | " "\-\-target="\c
.I bfdname\c
\&\|]
.RB "[\|" \-C | \-\-demangle "\|]"
.RB "[\|" \-\-debugging "\|]"
.RB "[\|" \-d | \-\-disassemble "\|]"
.RB "[\|" \-D | \-\-disassemble-all "\|]"
.RB "[\|" \-\-disassemble\-zeroes "\|]"
.RB "[\|" \-EB | \-EL | \-\-endian=\c
.I {big|little}\c
\&\|]
.RB "[\|" \-f | \-\-file\-headers "\|]"
.RB "[\|" \-h | \-\-section\-headers
.RB "| " \-\-headers "\|]"
.RB "[\|" \-i | \-\-info "\|]"
.RB "[\|" "\-j\ "\c
.I section\c
.RB " | " "\-\-section="\c
.I section\c
\&\|]
.RB "[\|" \-l | \-\-line\-numbers "\|]"
.RB "[\|" "\-m\ "\c
.I machine\c
.RB " | " "\-\-architecture="\c
.I machine\c
\&\|]
.RB "[\|" \-p | \-\-private\-headers "\|]"
.RB "[\|" \-\-prefix\-addresses "\|]"
.RB "[\|" \-r | \-\-reloc "\|]"
.RB "[\|" \-R | \-\-dynamic\-reloc "\|]"
.RB "[\|" \-s | \-\-full\-contents "\|]"
.RB "[\|" \-S | \-\-source "\|]"
.RB "[\|" \-\-[no\-]show\-raw\-insn "\|]"
.RB "[\|" \-\-stabs "\|]"
.RB "[\|" \-t | \-\-syms "\|]"
.RB "[\|" \-T | \-\-dynamic\-syms "\|]"
.RB "[\|" \-x | \-\-all\-headers "\|]"
.RB "[\|" "\-\-start\-address="\c
.I address\c
\&\|]
.RB "[\|" "\-\-stop\-address="\c
.I address\c
\&\|]
.RB "[\|" "\-\-adjust\-vma="\c
.I offset\c
\&\|]
.RB "[\|" \-\-version "\|]"
.RB "[\|" \-\-help "\|]"
.I objfile\c
\&.\|.\|.
.ad b
.hy 1
.SH DESCRIPTION
\c
.B objdump\c
\& displays information about one or more object files.
The options control what particular information to display. This
information is mostly useful to programmers who are working on the
compilation tools, as opposed to programmers who just want their
program to compile and work.
.PP
.IR "objfile" .\|.\|.
are the object files to be examined. When you specify archives,
\c
.B objdump\c
\& shows information on each of the member object files.
.SH OPTIONS
Where long and short forms of an option are shown together, they are
equivalent. At least one option besides
.B \-l
(\fB\-\-line\-numbers\fP) must be given.
.TP
.B \-a
.TP
.B \-\-archive\-headers
If any files from \c
.I objfile\c
\& are archives, display the archive
header information (in a format similar to `\|\c
.B ls \-l\c
\|'). Besides the
information you could list with `\|\c
.B ar tv\c
\|', `\|\c
.B objdump \-a\c
\|' shows
the object file format of each archive member.
.TP
.BI "\-\-adjust\-vma=" "offset"
When dumping information, first add
.I offset
to all the section addresses. This is useful if the section addresses
do not correspond to the symbol table, which can happen when putting
sections at particular addresses when using a format which can not
represent section addresses, such as a.out.
.TP
.BI "\-b " "bfdname"\c
.TP
.BI "\-\-target=" "bfdname"
Specify the object-code format for the object files to be
\c
.I bfdname\c
\&. This may not be necessary; \c
.I objdump\c
\& can
automatically recognize many formats. For example,
.sp
.br
objdump\ \-b\ oasys\ \-m\ vax\ \-h\ fu.o
.br
.sp
display summary information from the section headers (`\|\c
.B \-h\c
\|') of
`\|\c
.B fu.o\c
\|', which is explicitly identified (`\|\c
.B \-m\c
\|') as a Vax object
file in the format produced by Oasys compilers. You can list the
formats available with the `\|\c
.B \-i\c
\|' option.
.TP
.B \-C
.TP
.B \-\-demangle
Decode (\fIdemangle\fP) low-level symbol names into user-level names.
Besides removing any initial underscore prepended by the system, this
makes C++ function names readable.
.TP
.B \-\-debugging
Display debugging information. This attempts to parse debugging
information stored in the file and print it out using a C like syntax.
Only certain types of debugging information have been implemented.
.TP
.B \-d
.TP
.B \-\-disassemble
Display the assembler mnemonics for the machine
instructions from \c
.I objfile\c
\&.
This option only disassembles those sections which are
expected to contain instructions.
.TP
.B \-D
.TP
.B \-\-disassemble-all
Like \fB\-d\fP, but disassemble the contents of all sections, not just
those expected to contain instructions.
.TP
.B \-\-prefix\-addresses
When disassembling, print the complete address on each line. This is
the older disassembly format.
.TP
.B \-\-disassemble\-zeroes
Normally the disassembly output will skip blocks of zeroes. This
option directs the disassembler to disassemble those blocks, just like
any other data.
.TP
.B \-EB
.TP
.B \-EL
.TP
.BI "\-\-endian=" "{big|little}"
Specify the endianness of the object files. This only affects
disassembly. This can be useful when disassembling a file format which
does not describe endianness information, such as S-records.
.TP
.B \-f
.TP
.B \-\-file\-headers
Display summary information from the overall header of
each file in \c
.I objfile\c
\&.
.TP
.B \-h
.TP
.B \-\-section\-headers
.TP
.B \-\-headers
Display summary information from the section headers of the
object file.
.TP
.B \-\-help
Print a summary of the options to
.B objdump
and exit.
.TP
.B \-i
.TP
.B \-\-info
Display a list showing all architectures and object formats available
for specification with \c
.B \-b\c
\& or \c
.B \-m\c
\&.
.TP
.BI "\-j " "name"\c
.TP
.BI "\-\-section=" "name"
Display information only for section \c
.I name\c
\&.
.TP
.B \-l
.TP
.B \-\-line\-numbers
Label the display (using debugging information) with the filename
and source line numbers corresponding to the object code shown.
Only useful with \fB\-d\fP, \fB\-D\fP, or \fB\-r\fP.
.TP
.BI "\-m " "machine"\c
.TP
.BI "\-\-architecture=" "machine"
Specify the architecture to use when disassembling object files. This
can be useful when disassembling object files which do not describe
architecture information, such as S-records. You can list the available
architectures with the \fB\-i\fP option.
.TP
.B \-p
.TP
.B \-\-private\-headers
Print information that is specific to the object file format. The
exact information printed depends upon the object file format. For
some object file formats, no additional information is printed.
.TP
.B \-r
.TP
.B \-\-reloc
Print the relocation entries of the file. If used with \fB\-d\fP or
\fB\-D\fP, the relocations are printed interspersed with the
disassembly.
.TP
.B \-R
.TP
.B \-\-dynamic\-reloc
Print the dynamic relocation entries of the file. This is only
meaningful for dynamic objects, such as certain types of shared
libraries.
.TP
.B \-s
.TP
.B \-\-full\-contents
Display the full contents of any sections requested.
.TP
.B \-S
.TP
.B \-\-source
Display source code intermixed with disassembly, if possible. Implies
\fB-d\fP.
.TP
.B \-\-show\-raw\-insn
When disassembling instructions, print the instruction in hex as well as
in symbolic form. This is the default except when
.B \-\-prefix\-addresses
is used.
.TP
.B \-\-no\-show\-raw\-insn
When disassembling instructions, do not print the instruction bytes.
This is the default when
.B \-\-prefix\-addresses
is used.
.TP
.B \-\-stabs
Display the contents of the .stab, .stab.index, and .stab.excl
sections from an ELF file. This is only useful on systems (such as
Solaris 2.0) in which .stab debugging symbol-table entries are carried
in an ELF section. In most other file formats, debugging symbol-table
entries are interleaved with linkage symbols, and are visible in the
.B \-\-syms
output.
.TP
.BI "\-\-start\-address=" "address"
Start displaying data at the specified address. This affects the output
of the
.B \-d\c
,
.B \-r
and
.B \-s
options.
.TP
.BI "\-\-stop\-address=" "address"
Stop displaying data at the specified address. This affects the output
of the
.B \-d\c
,
.B \-r
and
.B \-s
options.
.TP
.B \-t
.TP
.B \-\-syms
Symbol Table. Print the symbol table entries of the file.
This is similar to the information provided by the `\|\c
.B nm\c
\|' program.
.TP
.B \-T
.TP
.B \-\-dynamic\-syms
Dynamic Symbol Table. Print the dynamic symbol table entries of the
file. This is only meaningful for dynamic objects, such as certain
types of shared libraries. This is similar to the information
provided by the `\|\c
.B nm\c
\|' program when given the
.B \-D (\-\-dynamic)
option.
.TP
.B \-\-version
Print the version number of
.B objdump
and exit.
.TP
.B \-x
.TP
.B \-\-all\-headers
Display all available header information, including the symbol table and
relocation entries. Using `\|\c
.B \-x\c
\|' is equivalent to specifying all of
`\|\c
.B \-a \-f \-h \-r \-t\c
\|'.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (October 1991);
.BR nm "(" 1 ")."
.SH COPYING
Copyright (c) 1991, 92, 93, 94, 95, 1996 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,83 @@
.\" Copyright (c) 1991 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH ranlib 1 "5 November 1991" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
ranlib \- generate index to archive.
.SH SYNOPSIS
.hy 0
.na
.B ranlib \c
.RB "[\|" \-v | \-V "\|]"
.I archive\c
\&
.ad b
.hy 1
.SH DESCRIPTION
.B ranlib
generates an index to the contents of an archive, and
stores it in the archive. The index lists each symbol defined by a
member of an archive that is a relocatable object file.
.PP
You may use
.RB ` "nm \-s" '
or
.RB ` "nm \-\-print-armap" '
to list this index.
.PP
An archive with such an index speeds up linking to the library, and
allows routines in the library to call each other without regard to
their placement in the archive.
.PP
The GNU
.B ranlib
program is another form of GNU
.BR ar ;
running
.B ranlib
is completely equivalent to executing
.RB ` "ar \-s" '.
.SH OPTIONS
.TP
.B \-v
Print the version number of
.B ranlib
and exit.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (October 1991);
.BR ar "(" 1 "),"
.BR nm "(" 1 ")."
.SH COPYING
Copyright (c) 1991 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,161 @@
.\" Copyright (c) 1991 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH size 1 "5 November 1991" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
size \- list section sizes and total size.
.SH SYNOPSIS
.hy 0
.na
.TP
.B size
.RB "[\|" \-A \||\| \-B \||\| \c
.BI "\-\-format=" compatibility\c
\&\|]
.RB "[\|" \-\-help "\|]"
.RB "[\|" \-d \||\| \-o \||\| \-x\c
\||\|\c
.BI "\-\-radix=" number\c
\&\|]
.RB "[\|" \c
.BI "\-\-target=" bfdname\c
\&\|]
.RB "[\|" \-V \||\| \-\-version "\|]"
.I objfile\c
\&.\|.\|.
.ad b
.hy 1
.SH DESCRIPTION
The GNU \c
.B size\c
\& utility lists the section sizes\(em\&and the total
size\(em\&for each of the object files
.I objfile
in its argument list.
By default, one line of output is generated for each object file or each
module in an archive.
.SH OPTIONS
.TP
.B \-A
.TP
.B \-B
.TP
.BI "\-\-format " "compatibility"
Using one of these options, you can choose whether the output from GNU
\c
.B size\c
\& resembles output from System V \c
.B size\c
\& (using `\|\c
.B \-A\c
\|',
or `\|\c
.B \-\-format=sysv\c
\|'), or Berkeley \c
.B size\c
\& (using `\|\c
.B \-B\c
\|', or
`\|\c
.B \-\-format=berkeley\c
\|'). The default is the one-line format similar to
Berkeley's.
.TP
.B \-\-help
Show a summary of acceptable arguments and options.
.TP
.B \-d
.TP
.B \-o
.TP
.B \-x
.TP
.BI "\-\-radix " "number"
Using one of these options, you can control whether the size of each
section is given in decimal (`\|\c
.B \-d\c
\|', or `\|\c
.B \-\-radix 10\c
\|'); octal
(`\|\c
.B \-o\c
\|', or `\|\c
.B \-\-radix 8\c
\|'); or hexadecimal (`\|\c
.B \-x\c
\|', or
`\|\c
.B \-\-radix 16\c
\|'). In `\|\c
.B \-\-radix \c
.I number\c
\&\c
\|', only the three
values (8, 10, 16) are supported. The total size is always given in two
radices; decimal and hexadecimal for `\|\c
.B \-d\c
\|' or `\|\c
.B \-x\c
\|' output, or
octal and hexadecimal if you're using `\|\c
.B \-o\c
\|'.
.TP
.BI "\-\-target " "bfdname"
You can specify a particular object-code format for \c
.I objfile\c
\& as
\c
.I bfdname\c
\&. This may not be necessary; \c
.I size\c
\& can
automatically recognize many formats. See
.BR objdump ( 1 )
for information
on listing available formats.
.TP
.B \-V
.TP
.B \-\-version
Display version number information on \c
.B size\c
\& itself.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.BR info ;
.IR "The GNU Binary Utilities" ,
Roland H. Pesch (October 1991);
.BR ar "(" 1 "),"
.BR objdump ( 1 ).
.SH COPYING
Copyright (c) 1991 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,151 @@
.\" Copyright (c) 1993, 94, 95, 2000 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH strings 1 "09 March 2000" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
strings \- print the strings of printable characters in files
.SH SYNOPSIS
.hy 0
.na
.TP
.B strings
.RB "[\|" \-a | \-\c
.RB | \-\-all "\|]"
.RB "[\|" \-f | \-\-print\-file\-name "\|]"
.RB "[\|" \-o "\|]"
.RB "[\|" \-\-help "\|]"
.RB "[\|" \-v | \-\-version "\|]"
.RB "[\|" \-n
.I min\-len\c
.RI | \-min\-len\c
.RB | "\-\-bytes="\c
.I min\-len\c
\&\|]
.RB "[\|" \-t
.I {o,x,d}\c
.RB "[\|" "\-\-target=\fIbfdname" "\|]"
.RB | "\-\-radix="\c
.I {o,x,d}\c
\&\|]
.I file\c
.ad b
.hy 1
.SH DESCRIPTION
For each
.I file
given, GNU \c
.B strings
prints the printable character sequences that are at least 4
characters long (or the number given with the options below) and are
followed by an unprintable character. By default, it only prints the
strings from the initialized and loaded sections of object files; for
other types of files, it prints the strings from the whole file.
.PP
.B strings
is mainly useful for determining the contents of non-text files.
.SH OPTIONS
The long and short forms of options, shown here as alternatives, are
equivalent.
.TP
.B \-a
.TP
.B \-\-all
.TP
.B \-
Do not scan only the initialized and loaded sections of object files;
scan the whole files.
.TP
.B \-f
.TP
.B \-\-print\-file\-name
Print the name of the file before each string.
.TP
.B \-\-help
Print a summary of the options to
.B strings
on the standard output and exit.
.TP
.B \-v
.TP
.B \-\-version
Print the version number
of
.B strings
on the standard output and exit.
.TP
.B "\-n \fImin\-len\fP"
.TP
.B "\-\fImin\-len\fP"
.TP
.B "\-\-bytes=\fImin\-len\fP"
Print sequences of characters that are at least
.I min\-len
characters long, instead of the default 4.
.TP
.BR "\-t " {o,x,d}
.TP
.BR "\-\-radix=" {o,x,d}
Print the offset within the file before each string. The single
character argument specifies the radix of the offset\(emoctal,
hexadecimal, or decimal.
.TP
.BI "\-\-target=" "bfdname"
Specify an object code format other than your system's default format.
See
.BR objdump ( 1 ),
for information on listing available formats.
.TP
.B \-o
Like
.BR "\-t o" .
.PP
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (October 1991);
.BR ar ( 1 ),
.BR nm ( 1 ),
.BR objdump ( 1 ),
.BR ranlib ( 1 ).
.SH COPYING
Copyright (c) 1993 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.

View File

@@ -0,0 +1,185 @@
.\" Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 1998 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH strip 1 "5 November 1991" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
strip \- Discard symbols from object files.
.SH SYNOPSIS
.hy 0
.na
.TP
.B strip
.RB "[\|" \-F\ \fIbfdname\fR\ |\ \fB\-\-target=\fIbfdname\fP "\|]"
.RB "[\|" \-I\ \fIbfdname\fR\ |\ \fB\-\-input\-target=\fIbfdname\fP "\|]"
.RB "[\|" \-O\ \fIbfdname\fR\ |\ \fB\-\-output\-target=\fIbfdname\fP "\|]"
.RB "[\|" \-R\ \fIsectionname\fR\ |\ \fB\-\-remove\-section=\fIsectionname\fP "\|]"
.RB "[\|" \-s\fR\ |\ \fB\-\-strip\-all "\|]"
.RB "[\|" \-S\fR\ |\ \fB\-g\fR\ |\ \fB\-\-strip\-debug "\|]"
.RB "[\|" \-\-strip\-unneeded\fR "\|]"
.RB "[\|" \-x\fR\ |\ \fB\-\-discard\-all "\|]"
.RB "[\|" \-X\fR\ |\ \fB\-\-discard\-locals "\|]"
.RB "[\|" \-K\ \fIsymbolname\fR\ |\ \fB\-\-keep\-symbol=\fIsymbolname\fR "\|]"
.RB "[\|" \-N\ \fIsymbolname\fR\ |\ \fB\-\-strip\-symbol=\fIsymbolname\fR "\|]"
.RB "[\|" \-o\ \fIfile\f\R "\|]"
.RB "[\|" \-p\fR\ |\ \fB\-\-preserve\-dates "\|]"
.RB "[\|" \-v\fR\ |\ \fB\-\-verbose "\|]"
.RB "[\|" \-V\fR\ |\ \fB\-\-version "\|]"
.RB "[\|" \-V\fR\ |\ \fB\-\-help "\|]"
.I objfile\c
\&.\|.\|.
.SH DESCRIPTION
GNU
.B strip
discards all symbols from the object files
.IR objfile .
The list of object files may include archives.
At least one object file must be given.
.P
.B strip
modifies the files named in its argument,
rather than writing modified copies under different names.
.SH OPTIONS
.TP
.B "\-F \fIbfdname"
.TP
.B "\-\-target=\fIbfdname"
Treat the original \fIobjfile\fP as a file with the object
code format \fIbfdname\fP, and rewrite it in the same format.
.TP
.B \-\-help
Show a summary of the options to
.B strip
and exit.
.TP
.B "\-I \fIbfdname
.TP
.B "\-\-input\-target=\fIbfdname"
Treat the original \fIobjfile\fP as a file with the object
code format \fIbfdname\fP.
.TP
.B "\-O \fIbfdname\fP"
.TP
.B "\-\-output\-target=\fIbfdname"
Replace \fIobjfile\fP with a file in the output format \fIbfdname\fP.
.TP
.B "\-R \fIsectionname\fP"
.TP
.B "\-\-remove\-section=\fIsectionname"
Remove the named section from the file. This option may be given more
than once. Note that using this option inappropriately may make the
object file unusable.
.TP
.B \-s
.TP
.B \-\-strip\-all
Remove all symbols.
.TP
.B \-S
.TP
.B \-g
.TP
.B \-\-strip\-debug
Remove debugging symbols only.
.TP
.B \-\-strip\-unneeded
Strip all symbols that are not needed for relocation processing.
.TP
.B \-N \fIsymbolname\fR
.TP
.B \-\-strip\-symbol=\fIsymbolname
Remove symbol \fIsymbolname\fP from the source file. This option
may be given more than once, and may be combined with other strip
options.
.TP
.B \-o \fIfile\fR
Put the stripped output in \fIfile\fR, rather than replacing the
existing file. When this argument is used, only one \fIobjfile\fR
argument may be specified.
.TP
.B \-p
.TP
.B \-\-preserve-dates
Preserve the access and modification dates of the file.
.TP
.B \-x
.TP
.B \-\-discard\-all
Remove non-global symbols.
.TP
.B \-X
.TP
.B \-\-discard\-locals
Remove compiler-generated local symbols.
(These usually start with ``L'' or ``.''.)
.TP
.B \-K \fIsymbolname\fR, \fB\-\-keep\-symbol=\fIsymbolname
Copy only symbol \fIsymbolname\fP from the source file. This option
may be given more than once.
.TP
.B \-N \fIsymbolname\fR, \fB\-\-strip\-symbol=\fIsymbolname
Do not copy symbol \fIsymbolname\fP from the source file. This option
may be given more than once, and may be combined with strip options
other than \fB\-K\fR.
.TP
.B \-v
.TP
.B \-\-verbose
Verbose output: list all object files modified. In the case of
archives,
.B "strip \-v"
lists all members of the archive.
.TP
.B \-V
.TP
.B \-\-version
Show the version number for \fBstrip\fP and exit.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.BR info ;
.IR "The GNU Binary Utilities" ,
Roland H. Pesch (October 1991).
.SH COPYING
Copyright (c) 1991 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.