size - print section sizes in bytes of object files
size [-f] [-F] [-n] [-o] [-V] [-x] filename...
The size command produces segment or section size informa-
tion in bytes for each loaded section in ELF object files.
size prints out the size of the text, data, and bss (unini-
tialized data) segments (or sections) and their total.
size processes ELF object files entered on the command line.
If an archive file is input to the size command, the infor-
mation for each object file in the archive is displayed.
When calculating segment information, the size command
prints out the total file size of the non-writable segments,
the total file size of the writable segments, and the total
memory size of the writable segments minus the total file
size of the writable segments.
If it cannot calculate segment information, size calculates
section information. When calculating section information,
it prints out the total size of sections that are allocat-
able, non-writable, and not NOBITS, the total size of the
sections that are allocatable, writable, and not NOBITS,
and the total size of the writable sections of type NOBITS.
NOBITS sections do not actually take up space in the
If size cannot calculate either segment or section informa-
tion, it prints an error message and stops processing the
The following options are supported:
-f Prints out the size of each allocatable section, the
name of the section, and the total of the section
sizes. If there is no section data, size prints out an
error message and stops processing the file.
-F Prints out the size of each loadable segment, the per-
mission flags of the segment, then the total of the
loadable segment sizes. If there is no segment data,
size prints an error message and stops processing the
-n Prints out non-loadable segment or non-allocatable
section sizes. If segment data exists, size prints out
the memory size of each loadable segment or file size
of each non-loadable segment, the permission flags,
and the total size of the segments. If there is no
segment data, size prints out, for each allocatable
and non-allocatable section, the memory size, the sec-
tion name, and the total size of the sections. If
there is no segment or section data, size prints an
error message and stops processing.
-o Prints numbers in octal, not decimal.
-V Prints the version information for the size command on
the standard error output.
-x Prints numbers in hexadecimal, not decimal.
The examples below are typical size output.
Example 1: Producing size information
example% size filename
2724 + 88 + 0 = 2812
Example 2: Producing allocatable section size information
example% size -f filename
26(.text) + 5(.init) + 5(.fini) = 36
Example 3: Producing loadable segment size information
example% size -F filename
2724(r-x) + 88(rwx) + 0(rwx) = 2812 ... (If statically linked)
See attributes(5) for descriptions of the following attri-
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Availability | SUNWbtool |
as(1), cc(1B), ld(1), ar(3HEAD), a.out(4), attributes(5)
Since the size of bss sections is not known until link-edit
time, the size command will not give the true total size of
Man(1) output converted with