Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 5 Jun 2008 14:50:15 +0100
From:      Anton Shterenlikht <mexas@bristol.ac.uk>
To:        Tobias Hoellrich <thoellri@adobe.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: size of executable - g95 vs gfortran42 - shared libs?
Message-ID:  <20080605135015.GA52233@mech-aslap33.men.bris.ac.uk>
In-Reply-To: <E891374F64B9194FB5BFFF28935811CA02A3EC77@namail2.corp.adobe.com>
References:  <20080605132106.GA51988@mech-aslap33.men.bris.ac.uk> <E891374F64B9194FB5BFFF28935811CA02A3EC77@namail2.corp.adobe.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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@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@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@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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080605135015.GA52233>