size of executable - g95 vs gfortran42 - shared libs?
Anton Shterenlikht
mexas at bristol.ac.uk
Thu Jun 5 13:50:26 UTC 2008
On Thu, Jun 05, 2008 at 06:29:35AM -0700, Tobias Hoellrich wrote:
> >
> > I use two different fortran90 compiler on a simple input file
> > and get executables which differ in size by almost 3 orders of
> > magnitude, see below. Is this something to do with the use
> > of shared libraries?
>
> Run "file" and "ldd" on the executables to see the difference:
>
> [root at santafe ~]# file `which ls`
> /bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD),
> for FreeBSD 8.0 (800038), dynamically linked (uses shared libs),
> FreeBSD-style, stripped
>
> [root at santafe ~]# ldd `which ls`
> /bin/ls:
> libutil.so.7 => /lib/libutil.so.7 (0x28082000)
> libncurses.so.7 => /lib/libncurses.so.7 (0x28090000)
> libc.so.7 => /lib/libc.so.7 (0x280cf000)
> [root at santafe ~]#
Many thanks, the ldd resuts differ,
but how does this translate into size?
% ls -al *out
-rwxr-xr-x 1 mexas wheel 546413 5 Jun 14:39 g95.out
-rwxr-xr-x 1 mexas wheel 9179 5 Jun 14:39 gf42.out
% file *out
g95.out: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD),
for FreeBSD 7.0 (700109), dynamically linked (uses shared libs),
FreeBSD-style, not stripped
gf42.out: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD),
for FreeBSD 7.0 (700109), dynamically linked (uses shared libs),
FreeBSD-style, not stripped
% ldd *.out
g95.out:
libm.so.5 => /lib/libm.so.5 (0x280c5000)
libc.so.7 => /lib/libc.so.7 (0x280db000)
gf42.out:
libgfortran.so.2 => /usr/local/lib/gcc-4.2.4/libgfortran.so.2 (0x2807e000)
libm.so.5 => /lib/libm.so.5 (0x28103000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x28119000)
libc.so.7 => /lib/libc.so.7 (0x28124000)
%
--
Anton Shterenlikht
Room 2.6, Queen's Building
Mech Eng Dept
Bristol University
University Walk, Bristol BS8 1TR, UK
Tel: +44 (0)117 928 8233
Fax: +44 (0)117 929 4423
More information about the freebsd-questions
mailing list