235 lines
7.8 KiB
Groff
235 lines
7.8 KiB
Groff
.\" -*- mode: troff; coding: utf-8 -*-
|
|
.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
|
|
.\"
|
|
.\" Standard preamble:
|
|
.\" ========================================================================
|
|
.de Sp \" Vertical space (when we can't use .PP)
|
|
.if t .sp .5v
|
|
.if n .sp
|
|
..
|
|
.de Vb \" Begin verbatim text
|
|
.ft CW
|
|
.nf
|
|
.ne \\$1
|
|
..
|
|
.de Ve \" End verbatim text
|
|
.ft R
|
|
.fi
|
|
..
|
|
.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
|
|
.ie n \{\
|
|
. ds C` ""
|
|
. ds C' ""
|
|
'br\}
|
|
.el\{\
|
|
. ds C`
|
|
. ds C'
|
|
'br\}
|
|
.\"
|
|
.\" Escape single quotes in literal strings from groff's Unicode transform.
|
|
.ie \n(.g .ds Aq \(aq
|
|
.el .ds Aq '
|
|
.\"
|
|
.\" If the F register is >0, we'll generate index entries on stderr for
|
|
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
|
|
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
|
.\" output yourself in some meaningful fashion.
|
|
.\"
|
|
.\" Avoid warning from groff about undefined register 'F'.
|
|
.de IX
|
|
..
|
|
.nr rF 0
|
|
.if \n(.g .if rF .nr rF 1
|
|
.if (\n(rF:(\n(.g==0)) \{\
|
|
. if \nF \{\
|
|
. de IX
|
|
. tm Index:\\$1\t\\n%\t"\\$2"
|
|
..
|
|
. if !\nF==2 \{\
|
|
. nr % 0
|
|
. nr F 2
|
|
. \}
|
|
. \}
|
|
.\}
|
|
.rr rF
|
|
.\" ========================================================================
|
|
.\"
|
|
.IX Title "SIZE 1"
|
|
.TH SIZE 1 1980-01-01 binutils-2.40.90 "GNU Development Tools"
|
|
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
|
.\" way too many mistakes in technical documents.
|
|
.if n .ad l
|
|
.nh
|
|
.SH NAME
|
|
size \- list section sizes and total size of binary files
|
|
.SH SYNOPSIS
|
|
.IX Header "SYNOPSIS"
|
|
size [\fB\-A\fR|\fB\-B\fR|\fB\-G\fR|\fB\-\-format=\fR\fIcompatibility\fR]
|
|
[\fB\-\-help\fR]
|
|
[\fB\-d\fR|\fB\-o\fR|\fB\-x\fR|\fB\-\-radix=\fR\fInumber\fR]
|
|
[\fB\-\-common\fR]
|
|
[\fB\-t\fR|\fB\-\-totals\fR]
|
|
[\fB\-\-target=\fR\fIbfdname\fR] [\fB\-V\fR|\fB\-\-version\fR]
|
|
[\fB\-f\fR]
|
|
[\fIobjfile\fR...]
|
|
.SH DESCRIPTION
|
|
.IX Header "DESCRIPTION"
|
|
The GNU \fBsize\fR utility lists the section sizes and the total
|
|
size for each of the binary files \fIobjfile\fR on its argument list.
|
|
By default, one line of output is generated for each file or each
|
|
module if the file is an archive.
|
|
.PP
|
|
\&\fIobjfile\fR... are the files to be examined. If none are
|
|
specified, the file \f(CW\*(C`a.out\*(C'\fR will be used instead.
|
|
.SH OPTIONS
|
|
.IX Header "OPTIONS"
|
|
The command-line options have the following meanings:
|
|
.IP \fB\-A\fR 4
|
|
.IX Item "-A"
|
|
.PD 0
|
|
.IP \fB\-B\fR 4
|
|
.IX Item "-B"
|
|
.IP \fB\-G\fR 4
|
|
.IX Item "-G"
|
|
.IP \fB\-\-format=\fR\fIcompatibility\fR 4
|
|
.IX Item "--format=compatibility"
|
|
.PD
|
|
Using one of these options, you can choose whether the output from GNU
|
|
\&\fBsize\fR resembles output from System V \fBsize\fR (using \fB\-A\fR,
|
|
or \fB\-\-format=sysv\fR), or Berkeley \fBsize\fR (using \fB\-B\fR, or
|
|
\&\fB\-\-format=berkeley\fR). The default is the one-line format similar to
|
|
Berkeley's. Alternatively, you can choose the GNU format output
|
|
(using \fB\-G\fR, or \fB\-\-format=gnu\fR), this is similar to
|
|
Berkeley's output format, but sizes are counted differently.
|
|
.Sp
|
|
Here is an example of the Berkeley (default) format of output from
|
|
\&\fBsize\fR:
|
|
.Sp
|
|
.Vb 4
|
|
\& $ size \-\-format=Berkeley ranlib size
|
|
\& text data bss dec hex filename
|
|
\& 294880 81920 11592 388392 5ed28 ranlib
|
|
\& 294880 81920 11888 388688 5ee50 size
|
|
.Ve
|
|
.Sp
|
|
The Berkeley style output counts read only data in the \f(CW\*(C`text\*(C'\fR
|
|
column, not in the \f(CW\*(C`data\*(C'\fR column, the \f(CW\*(C`dec\*(C'\fR and \f(CW\*(C`hex\*(C'\fR
|
|
columns both display the sum of the \f(CW\*(C`text\*(C'\fR, \f(CW\*(C`data\*(C'\fR, and
|
|
\&\f(CW\*(C`bss\*(C'\fR columns in decimal and hexadecimal respectively.
|
|
.Sp
|
|
The GNU format counts read only data in the \f(CW\*(C`data\*(C'\fR column, not
|
|
the \f(CW\*(C`text\*(C'\fR column, and only displays the sum of the \f(CW\*(C`text\*(C'\fR,
|
|
\&\f(CW\*(C`data\*(C'\fR, and \f(CW\*(C`bss\*(C'\fR columns once, in the \f(CW\*(C`total\*(C'\fR column.
|
|
The \fB\-\-radix\fR option can be used to change the number base for
|
|
all columns. Here is the same data displayed with GNU conventions:
|
|
.Sp
|
|
.Vb 4
|
|
\& $ size \-\-format=GNU ranlib size
|
|
\& text data bss total filename
|
|
\& 279880 96920 11592 388392 ranlib
|
|
\& 279880 96920 11888 388688 size
|
|
.Ve
|
|
.Sp
|
|
This is the same data, but displayed closer to System V conventions:
|
|
.Sp
|
|
.Vb 7
|
|
\& $ size \-\-format=SysV ranlib size
|
|
\& ranlib :
|
|
\& section size addr
|
|
\& .text 294880 8192
|
|
\& .data 81920 303104
|
|
\& .bss 11592 385024
|
|
\& Total 388392
|
|
\&
|
|
\&
|
|
\& size :
|
|
\& section size addr
|
|
\& .text 294880 8192
|
|
\& .data 81920 303104
|
|
\& .bss 11888 385024
|
|
\& Total 388688
|
|
.Ve
|
|
.IP \fB\-\-help\fR 4
|
|
.IX Item "--help"
|
|
.PD 0
|
|
.IP \fB\-h\fR 4
|
|
.IX Item "-h"
|
|
.IP \fB\-H\fR 4
|
|
.IX Item "-H"
|
|
.IP \fB\-?\fR 4
|
|
.IX Item "-?"
|
|
.PD
|
|
Show a summary of acceptable arguments and options.
|
|
.IP \fB\-d\fR 4
|
|
.IX Item "-d"
|
|
.PD 0
|
|
.IP \fB\-o\fR 4
|
|
.IX Item "-o"
|
|
.IP \fB\-x\fR 4
|
|
.IX Item "-x"
|
|
.IP \fB\-\-radix=\fR\fInumber\fR 4
|
|
.IX Item "--radix=number"
|
|
.PD
|
|
Using one of these options, you can control whether the size of each
|
|
section is given in decimal (\fB\-d\fR, or \fB\-\-radix=10\fR); octal
|
|
(\fB\-o\fR, or \fB\-\-radix=8\fR); or hexadecimal (\fB\-x\fR, or
|
|
\&\fB\-\-radix=16\fR). In \fB\-\-radix=\fR\fInumber\fR, only the three
|
|
values (8, 10, 16) are supported. The total size is always given in two
|
|
radices; decimal and hexadecimal for \fB\-d\fR or \fB\-x\fR output, or
|
|
octal and hexadecimal if you're using \fB\-o\fR.
|
|
.IP \fB\-\-common\fR 4
|
|
.IX Item "--common"
|
|
Print total size of common symbols in each file. When using Berkeley
|
|
or GNU format these are included in the bss size.
|
|
.IP \fB\-t\fR 4
|
|
.IX Item "-t"
|
|
.PD 0
|
|
.IP \fB\-\-totals\fR 4
|
|
.IX Item "--totals"
|
|
.PD
|
|
Show totals of all objects listed (Berkeley or GNU format mode only).
|
|
.IP \fB\-\-target=\fR\fIbfdname\fR 4
|
|
.IX Item "--target=bfdname"
|
|
Specify that the object-code format for \fIobjfile\fR is
|
|
\&\fIbfdname\fR. This option may not be necessary; \fBsize\fR can
|
|
automatically recognize many formats.
|
|
.IP \fB\-v\fR 4
|
|
.IX Item "-v"
|
|
.PD 0
|
|
.IP \fB\-V\fR 4
|
|
.IX Item "-V"
|
|
.IP \fB\-\-version\fR 4
|
|
.IX Item "--version"
|
|
.PD
|
|
Display the version number of \fBsize\fR.
|
|
.IP \fB\-f\fR 4
|
|
.IX Item "-f"
|
|
Ignored. This option is used by other versions of the \fBsize\fR
|
|
program, but it is not supported by the GNU Binutils version.
|
|
.IP \fB@\fR\fIfile\fR 4
|
|
.IX Item "@file"
|
|
Read command-line options from \fIfile\fR. The options read are
|
|
inserted in place of the original @\fIfile\fR option. If \fIfile\fR
|
|
does not exist, or cannot be read, then the option will be treated
|
|
literally, and not removed.
|
|
.Sp
|
|
Options in \fIfile\fR are separated by whitespace. A whitespace
|
|
character may be included in an option by surrounding the entire
|
|
option in either single or double quotes. Any character (including a
|
|
backslash) may be included by prefixing the character to be included
|
|
with a backslash. The \fIfile\fR may itself contain additional
|
|
@\fIfile\fR options; any such options will be processed recursively.
|
|
.SH "SEE ALSO"
|
|
.IX Header "SEE ALSO"
|
|
\&\fBar\fR\|(1), \fBobjdump\fR\|(1), \fBreadelf\fR\|(1), and the Info entries for \fIbinutils\fR.
|
|
.SH COPYRIGHT
|
|
.IX Header "COPYRIGHT"
|
|
Copyright (c) 1991\-2023 Free Software Foundation, Inc.
|
|
.PP
|
|
Permission is granted to copy, distribute and/or modify this document
|
|
under the terms of the GNU Free Documentation License, Version 1.3
|
|
or any later version published by the Free Software Foundation;
|
|
with no Invariant Sections, with no Front-Cover Texts, and with no
|
|
Back-Cover Texts. A copy of the license is included in the
|
|
section entitled "GNU Free Documentation License".
|