develooper Front page | perl.perl5.porters | Postings from July 2011

win32 vs *nix static extention inconsistency

Thread Next
From:
Nicholas Clark
Date:
July 28, 2011 11:36
Subject:
win32 vs *nix static extention inconsistency
Message ID:
20110728183616.GC23881@plum.flirble.org
Is this intended, or just a side effect:

if one configures extensions as static

* On Win32:

    as best I can tell from the Makefile, the static extensions are linked
    into perl515.dll. perl.exe remains the same size

* On *nix (with -Duseshrperllib):

    the static extension code is compiled -fPIC
    it's linked into perl, not libperl.so


ie:

make: Entering directory `/scratch/nick/perl/ext/Fcntl'
ccache gcc -c   -D_REENTRANT -D_GNU_SOURCE -DNO_MATHOMS -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g   -DVERSION=\"1.11\" -DXS_VERSION=\"1.11\" -fPIC "-I../.."   Fcntl.c
rm -rf ../../lib/auto/Fcntl/Fcntl.a
/usr/bin/ar cr ../../lib/auto/Fcntl/Fcntl.a Fcntl.o && : ../../lib/auto/Fcntl/Fcntl.a
chmod 755 ../../lib/auto/Fcntl/Fcntl.a
make: Leaving directory `/scratch/nick/perl/ext/Fcntl'

and

LD_LIBRARY_PATH=/scratch/nick/perl ccache gcc -o perl  -fstack-protector -L/usr/local/lib -Wl,-E -Wl,-rpath,/home/nick/Sandpit/snap5.9.x-v5.15.1-145-g9cd70da/lib/perl5/5.15.1/x86_64-linux-thread-multi/CORE perlmain.o lib/auto/Fcntl/Fcntl.a libperl.so `cat ext.libs` -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc



Should *nix really be doing things the Win32 way here?

Nicholas Clark

Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About