develooper Front page | perl.par | Postings from November 2006

Re: Preflight: PAR 0.958 with parl-regenerating pp goodness

Thread Previous | Thread Next
From:
Philippe Schaffnit
Date:
November 14, 2006 02:53
Subject:
Re: Preflight: PAR 0.958 with parl-regenerating pp goodness
Message ID:
45599FA1.DC88BFDD@access.rwth-aachen.de

Hi!

I'm in favour of hacking the heuristics, as this seems to do the trick
for me (appart from a warning in the tests...), 8-)

Where does 'perl -V' get the info from? Isn't it available for you to
look up?

Thanks!

Philippe

PS: what I get with the modification you suggested

sunfire /WORK/philippe/Temp/trunk> perl Makefile.PL
*** Module::AutoInstall version 1.03
*** Checking for Perl dependencies...
[Core Features]
- File::Temp        ...loaded. (0.17 >= 0.05)
- Compress::Zlib    ...loaded. (1.42 >= 1.3)
- Archive::Zip      ...loaded. (1.18 >= 1)
- Module::ScanDeps  ...loaded. (0.69 >= 0.69)
- PAR::Dist         ...loaded. (0.21 >= 0.21)
- Getopt::ArgvFile  ...loaded. (1.10 >= 1.07)
[Digital signature support]
- Digest            ...loaded. (1.15)
- Module::Signature ...loaded. (0.55)
*** Module::AutoInstall configuration finished.
Checking if your kit is complete...
Warning: the following files are missing in your kit:
        META.yml
        SIGNATURE
Please inform the author.
Writing Makefile for the par program
Writing Makefile for PAR
sunfire /WORK/philippe/Temp/trunk> make 
cp lib/PAR/Filter/PodStrip.pm blib/lib/PAR/Filter/PodStrip.pm
cp lib/PAR/Packer.pm blib/lib/PAR/Packer.pm
cp lib/App/Packer/PAR.pm blib/lib/App/Packer/PAR.pm
cp lib/PAR/Filter/Obfuscate.pm blib/lib/PAR/Filter/Obfuscate.pm
cp lib/PAR/StrippedPARL/Base.pm blib/lib/PAR/StrippedPARL/Base.pm
cp lib/PAR/Environment.pod blib/lib/PAR/Environment.pod
cp lib/PAR/Filter.pm blib/lib/PAR/Filter.pm
cp lib/PAR.pm blib/lib/PAR.pm
cp lib/PAR/StrippedPARL/Dynamic.pm blib/lib/PAR/StrippedPARL/Dynamic.pm
cp lib/PAR/Filter/PatchContent.pm blib/lib/PAR/Filter/PatchContent.pm
cp lib/PAR/Filter/Bytecode.pm blib/lib/PAR/Filter/Bytecode.pm
cp lib/PAR/Tutorial.pod blib/lib/PAR/Tutorial.pod
cp lib/PAR/FAQ.pod blib/lib/PAR/FAQ.pod
cp lib/PAR/Heavy.pm blib/lib/PAR/Heavy.pm
cp lib/PAR/Filter/Bleach.pm blib/lib/PAR/Filter/Bleach.pm
cp lib/PAR/StrippedPARL/Static.pm blib/lib/PAR/StrippedPARL/Static.pm
make[1]: Entering directory `/WORK/philippe/Temp/trunk/myldr'
/WORK/philippe/Tools/Perl/bin/perl sha1.c.PL sha1.c
gcc -m32 -c -fno-strict-aliasing -pipe -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 
-I/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE  sha1.c
/WORK/philippe/Tools/Perl/bin/perl ./file2c.pl
/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE/libperl.a
my_perl.c load_me_0 1 30000
gcc -m32 -c -fno-strict-aliasing -pipe -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 
-I/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE  main.c
/WORK/philippe/Tools/Perl/bin/perl ./file2c.pl ../script/par.pl
my_par_pl.c load_me_2 1
gcc -m32 -c -fno-strict-aliasing -pipe -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 
-I/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE 
my_par_pl.c
gcc -m32 main.o my_par_pl.o  -s -Wl,-E  -L/usr/local/lib
/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/auto/DynaLoader/DynaLoader.a
-L/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE -lperl
-lnsl -ldl -lm -lcrypt -lutil -lc --output ./par
/WORK/philippe/Tools/Perl/bin/perl ./file2c.pl ./par my_par.c load_me_1
1 30000
gcc -m32 -c -fno-strict-aliasing -pipe -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 
-I/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE  static.c
gcc -m32 static.o -s -Wl,-E  -L/usr/local/lib
/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/auto/DynaLoader/DynaLoader.a
-L/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE -lnsl -ldl
-lm -lcrypt -lutil -lc  --output ./static
/WORK/philippe/Tools/Perl/bin/perl parlsig.pl ./static ./par 1 30000
./static -I"/WORK/philippe/Temp/trunk/inc"
-I"/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux"
-I"/WORK/philippe/Tools/Perl/lib/perl5/5.8.8"
-I"/WORK/philippe/Tools/Perl/lib/perl5/site_perl/5.8.8/x86_64-linux"
-I"/WORK/philippe/Tools/Perl/lib/perl5/site_perl/5.8.8"
-I"/WORK/philippe/Tools/Perl/lib/perl5/site_perl"
-I"/WORK/philippe/Temp/trunk" -I"." -I../myldr/.. -I../blib/lib -q -B
-O../script/parl
./par -I../myldr/.. -I../blib/lib -I"/WORK/philippe/Temp/trunk/inc"
-I"/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux"
-I"/WORK/philippe/Tools/Perl/lib/perl5/5.8.8"
-I"/WORK/philippe/Tools/Perl/lib/perl5/site_perl/5.8.8/x86_64-linux"
-I"/WORK/philippe/Tools/Perl/lib/perl5/site_perl/5.8.8"
-I"/WORK/philippe/Tools/Perl/lib/perl5/site_perl"
-I"/WORK/philippe/Temp/trunk" -I"." -q -B -O../script/parldyn
/WORK/philippe/Tools/Perl/bin/perl -e "chmod(oct('0600'),
'../blib/lib/PAR/StrippedPARL/Static.pm');"
/WORK/philippe/Tools/Perl/bin/perl encode_append.pl ./static
../blib/lib/PAR/StrippedPARL/Static.pm
/WORK/philippe/Tools/Perl/bin/perl -e "chmod(oct('0444'),
'../blib/lib/PAR/StrippedPARL/Static.pm');"
/WORK/philippe/Tools/Perl/bin/perl -e "chmod(oct('0600'),
'../blib/lib/PAR/StrippedPARL/Dynamic.pm');"
/WORK/philippe/Tools/Perl/bin/perl encode_append.pl ./par
../blib/lib/PAR/StrippedPARL/Dynamic.pm
/WORK/philippe/Tools/Perl/bin/perl -e "chmod(oct('0444'),
'../blib/lib/PAR/StrippedPARL/Dynamic.pm');"
make[1]: Leaving directory `/WORK/philippe/Temp/trunk/myldr'
cp script/parl blib/script/parl
/WORK/philippe/Tools/Perl/bin/perl "-Iinc" "-MExtUtils::MY" -e
"MY->fixin(shift)" blib/script/parl
cp script/tkpp blib/script/tkpp
/WORK/philippe/Tools/Perl/bin/perl "-Iinc" "-MExtUtils::MY" -e
"MY->fixin(shift)" blib/script/tkpp
cp script/pp blib/script/pp
/WORK/philippe/Tools/Perl/bin/perl "-Iinc" "-MExtUtils::MY" -e
"MY->fixin(shift)" blib/script/pp
cp script/par.pl blib/script/par.pl
/WORK/philippe/Tools/Perl/bin/perl "-Iinc" "-MExtUtils::MY" -e
"MY->fixin(shift)" blib/script/par.pl
Manifying blib/man1/tkpp.1
Manifying blib/man1/parl.1
Manifying blib/man1/pp.1
Manifying blib/man1/par.pl.1
Manifying blib/man3/PAR::StrippedPARL::Base.3
Manifying blib/man3/PAR::Filter::Obfuscate.3
Manifying blib/man3/App::Packer::PAR.3
Manifying blib/man3/PAR::Packer.3
Manifying blib/man3/PAR::Filter::PodStrip.3
Manifying blib/man3/PAR::Filter.3
Manifying blib/man3/PAR::Environment.3
Manifying blib/man3/PAR.3
Manifying blib/man3/PAR::Filter::PatchContent.3
Manifying blib/man3/PAR::StrippedPARL::Dynamic.3
Manifying blib/man3/PAR::Filter::Bytecode.3
Manifying blib/man3/PAR::FAQ.3
Manifying blib/man3/PAR::Tutorial.3
Manifying blib/man3/PAR::Heavy.3
Manifying blib/man3/PAR::Filter::Bleach.3
Manifying blib/man3/PAR::StrippedPARL::Static.3
sunfire /WORK/philippe/Temp/trunk> make test
make[1]: Entering directory `/WORK/philippe/Temp/trunk/myldr'
/WORK/philippe/Tools/Perl/bin/perl -e "chmod(oct('0600'),
'../blib/lib/PAR/StrippedPARL/Static.pm');"
/WORK/philippe/Tools/Perl/bin/perl encode_append.pl ./static
../blib/lib/PAR/StrippedPARL/Static.pm
Output file '../blib/lib/PAR/StrippedPARL/Static.pm' does not have an
empty __DATA__ section. Not appending encoded data from './static'. This
is NOT a fatal error! at encode_append.pl line 26.
/WORK/philippe/Tools/Perl/bin/perl -e "chmod(oct('0444'),
'../blib/lib/PAR/StrippedPARL/Static.pm');"
/WORK/philippe/Tools/Perl/bin/perl -e "chmod(oct('0600'),
'../blib/lib/PAR/StrippedPARL/Dynamic.pm');"
/WORK/philippe/Tools/Perl/bin/perl encode_append.pl ./par
../blib/lib/PAR/StrippedPARL/Dynamic.pm
Output file '../blib/lib/PAR/StrippedPARL/Dynamic.pm' does not have an
empty __DATA__ section. Not appending encoded data from './par'. This is
NOT a fatal error! at encode_append.pl line 26.
/WORK/philippe/Tools/Perl/bin/perl -e "chmod(oct('0444'),
'../blib/lib/PAR/StrippedPARL/Dynamic.pm');"
make[1]: Leaving directory `/WORK/philippe/Temp/trunk/myldr'
PERL_DL_NONLAZY=1 /WORK/philippe/Tools/Perl/bin/perl
"-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib',
'blib/arch')" t/00-pod.t t/01-basic.t t/10-parl-generation.t t/20-pp.t
t/30-current_exec.t t/40-par-hashref.t
t/00-pod................skipped
        all skipped: Set environment variable PERL_TEST_POD=1 to test
POD
t/01-basic..............ok                                                   
t/10-parl-generation....ok                                                   
t/20-pp.................ok                                                   
t/30-current_exec.......# Please wait
t/30-current_exec.......ok 2/4# Please
wait                                  
t/30-current_exec.......ok                                                   
t/40-par-hashref........ok                                                   
All tests successful, 1 test skipped.
Files=6, Tests=84, 126 wallclock secs (70.82 cusr + 13.94 csys = 84.76
CPU)
make[1]: Entering directory `/WORK/philippe/Temp/trunk/myldr'
/WORK/philippe/Tools/Perl/bin/perl -e1
make[1]: Leaving directory `/WORK/philippe/Temp/trunk/myldr'
sunfire /WORK/philippe/Temp/trunk> diff myldr/Makefile.PL
/USER/philippe/Irix/P
PAR/   Perl/  
sunfire /WORK/philippe/Temp/trunk> diff myldr/Makefile.PL
/USER/philippe/Irix/PAR/trunk/myldr/Makefile.PL 
130,131d129
<     $libperl =
"/WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE/libperl.a"
<       unless -e $libperl;


Steffen Mueller wrote:
> 
> Philippe Schaffnit schrieb:
> > You got right on to it!
> >
> > (BTW, during my failed attempt to understand the makefile under Irix
> > with the CPAN sources, I had noticed that it was also refering to the
> > wrong perllib, but it didn't prevent it from building fine, though...).
> >
> > 'perl -V' rightly points to a static library...
> >
> > I hope this helps...
> 
> Well, kind of.
> This brings me to the question why the die() was commented out. Various
> unanswered questions:
> 
> Should PAR work even if the libperl wasn't found? No idea.
> Perhaps this is expected when the lib is static?
> What exactly should happen in that case? Should I just hack the
> libperl-finding-heuristics to find the .a file as well?
> 
> As a test, could you try setting the libperl in the Makefile.PL
> explicitly to the name and path of your static perl library and see
> whether PAR builds? (After it was set to undef by the heuristics!)
> If so, I suppose I can just hack the heuristics. Otherwise, I'm at a loss.
> 
> Steffen
> 
> > PS: what I did (and got)
> >
> > sunfire /WORK/philippe/Temp/trunk> ne myldr/Makefile.PL
> > [1] 1061
> > sunfire /WORK/philippe/Temp/trunk> perl Makefile.PL
> > *** Module::AutoInstall version 1.03
> > *** Checking for Perl dependencies...
> > [Core Features]
> > - File::Temp        ...loaded. (0.17 >= 0.05)
> > - Compress::Zlib    ...loaded. (1.42 >= 1.3)
> > - Archive::Zip      ...loaded. (1.18 >= 1)
> > - Module::ScanDeps  ...loaded. (0.69 >= 0.69)
> > - PAR::Dist         ...loaded. (0.21 >= 0.21)
> > - Getopt::ArgvFile  ...loaded. (1.10 >= 1.07)
> > [Digital signature support]
> > - Digest            ...loaded. (1.15)
> > - Module::Signature ...loaded. (0.55)
> > *** Module::AutoInstall configuration finished.
> > Checking if your kit is complete...
> > Warning: the following files are missing in your kit:
> >         META.yml
> >         SIGNATURE
> > Please inform the author.
> > ERROR from evaluation of /WORK/philippe/Temp/trunk/myldr/Makefile.PL:
> > Can't find libperl.so in (/WORK/philippe/Tools/Perl/bin
> > /WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE
> > /USER/philippe/Linux/MICRESS/Libraries /WORK/philippe/Tools/Gcc/lib
> > /WORK/philippe/Tools/Gcc/lib64 /WORK/philippe/Tools/Gmp/lib
> > /WORK/philippe/Tools/Mpfr/lib /WORK/philippe/Tools/Perl/lib
> > /WORK/philippe/Tools/Subversion/lib /opt/intel/fc/9.0/lib
> > /opt/intel/cc/9.0/lib /usr/local/lib /usr/local/lib /lib /usr/lib) --
> > please contact the author! at ./Makefile.PL line 128.
> > sunfire /WORK/philippe/Temp/trunk> perl -V
> > Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
> >   Platform:
> >     osname=linux, osvers=2.6.5-7.97-smp, archname=x86_64-linux
> >     uname='linux sunfire 2.6.5-7.97-smp #1 smp fri jul 2 14:21:59 utc
> > 2004 x86_64 x86_64 x86_64 gnulinux '
> >     config_args='-Dprefix=/WORK/philippe/Tools/Perl
> > -Dhtml1dir=/WORK/philippe//Tools/Perl/html
> > -Dcf_email=Philippe.Schaffnit@ACCESS.RWTH-Aachen.de -Dcc=gcc -m32 -d -e'
> >     hint=recommended, useposix=true, d_sigaction=define
> >     usethreads=undef use5005threads=undef useithreads=undef
> > usemultiplicity=undef
> >     useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
> >     use64bitint=undef use64bitall=undef uselongdouble=undef
> >     usemymalloc=n, bincompat5005=undef
> >   Compiler:
> >     cc='gcc -m32', ccflags ='-fno-strict-aliasing -pipe
> > -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
> >     optimize='-O2',
> >     cppflags='-fno-strict-aliasing -pipe -I/usr/local/include'
> >     ccversion='', gccversion='3.3.3 (SuSE Linux)', gccosandvers=''
> >     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
> >     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
> >     ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
> > lseeksize=8
> >     alignbytes=4, prototype=define
> >   Linker and Libraries:
> >     ld='gcc -m32', ldflags =' -L/usr/local/lib'
> >     libpth=/usr/local/lib /lib /usr/lib
> >     libs=-lnsl -lgdbm -ldl -lm -lcrypt -lutil -lc
> >     perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
> >     libc=, so=so, useshrplib=false, libperl=libperl.a
> >     gnulibc_version='2.3.3'
> >   Dynamic Linking:
> >     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
> >     cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'
> >
> >
> > Characteristics of this binary (from libperl):
> >   Compile-time options: PERL_MALLOC_WRAP USE_LARGE_FILES USE_PERLIO
> >   Built under linux
> >   Compiled at Mar 14 2006 11:59:05
> >   @INC:
> >     /WORK/philippe/Tools/Perl/lib/perl5/5.8.8/x86_64-linux
> >     /WORK/philippe/Tools/Perl/lib/perl5/5.8.8
> >     /WORK/philippe/Tools/Perl/lib/perl5/site_perl/5.8.8/x86_64-linux
> >     /WORK/philippe/Tools/Perl/lib/perl5/site_perl/5.8.8
> >     /WORK/philippe/Tools/Perl/lib/perl5/site_perl
> >     .
> > sunfire /WORK/philippe/Temp/trunk> find ../../Tools/Perl/ -name
> > libperl.a
> > ../../Tools/Perl/lib/perl5/5.8.8/x86_64-linux/CORE/libperl.a
> > sunfire /WORK/philippe/Temp/trunk> find ../../Tools/Perl/ -name
> > libperl.so


Thread Previous | 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