I ran 'make clean' followed by 'perl Makefile.PL' and got:

Writing Makefile for the par program
Writing Makefile for PAR::Packer

Then I ran 'make' and got:

cp lib/App/Packer/PAR.pm blib/lib/App/Packer/PAR.pm
cp lib/PAR/Packer.pm blib/lib/PAR/Packer.pm
cp lib/PAR/Filter/Obfuscate.pm blib/lib/PAR/Filter/Obfuscate.pm
cp lib/PAR/Filter/PodStrip.pm blib/lib/PAR/Filter/PodStrip.pm
cp lib/PAR/StrippedPARL/Base.pm blib/lib/PAR/StrippedPARL/Base.pm
cp lib/PAR/Filter.pm blib/lib/PAR/Filter.pm
cp lib/PAR/Filter/PatchContent.pm blib/lib/PAR/Filter/PatchContent.pm
cp lib/PAR/StrippedPARL/Dynamic.pm blib/lib/PAR/StrippedPARL/Dynamic.pm
cp lib/PAR/Filter/Bytecode.pm blib/lib/PAR/Filter/Bytecode.pm
cp lib/pp.pm blib/lib/pp.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
gmake[1]: Entering directory `/LDM/par-packer from svn/myldr'
perl sha1.c.PL sha1.c
gcc -c -DPERL_SCO -DPERL_SCO507 -DHAS_FPSETMASK -D_REENTRANT  
-I/usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/CORE  -DPARL_EXE=\"parl\" -march=i586 
-mcpu=i586 -O6 -fomit-frame-pointer main.c
perl ./file2c.pl -s ../script/par.pl -l my_par_pl.c load_my_par_pl
gcc -c -DPERL_SCO -DPERL_SCO507 -DHAS_FPSETMASK -D_REENTRANT  
-I/usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/CORE  -DPARL_EXE=\"parl\" -march=i586 
-mcpu=i586 -O6 -fomit-frame-pointer my_par_pl.c
gcc main.o my_par_pl.o  -s -Wl,-Bexport  
/usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/auto/DynaLoader/DynaLoader.a 
-L/usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/CORE -lperl -lsocket -lm -lcrypt -lc -o 
./par
perl -e1
perl ./file2c.pl -l -c 30000 ./par my_par.c load_my_par
perl ./file2c.pl -l -c 30000 -n libperl.so 
/usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/CORE/libperl.so my_libperl.c 
load_my_libperl
gcc -c -DPERL_SCO -DPERL_SCO507 -DHAS_FPSETMASK -D_REENTRANT  
-I/usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/CORE  -DPARL_EXE=\"parl\" -march=i586 
-mcpu=i586 -O6 -fomit-frame-pointer static.c
In file included from mktmpdir.h:85,
                 from mktmpdir.c:1,
                 from static.c:3:
sha1.c: In function `sha_transform':
sha1.c:146: warning: right shift count >= width of type
gcc static.o -s -Wl,-Bexport  
/usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/auto/DynaLoader/DynaLoader.a 
-L/usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/CORE -lsocket -lm -lcrypt -lc  -o 
./static
perl -e1
perl parlsig.pl ./static ./par 1 30000
perl -Mblib run_with_inc.pl ./static -q -B -O../script/parl
perl -e "chmod(oct('0600'), '../blib/lib/PAR/StrippedPARL/Static.pm');"
perl encode_append.pl ./static ../blib/lib/PAR/StrippedPARL/Static.pm
perl -e "chmod(oct('0444'), '../blib/lib/PAR/StrippedPARL/Static.pm');"
perl -Mblib run_with_inc.pl ./par -q -B -O../script/parldyn
perl -e "chmod(oct('0600'), '../blib/lib/PAR/StrippedPARL/Dynamic.pm');"
perl encode_append.pl ./par ../blib/lib/PAR/StrippedPARL/Dynamic.pm
perl -e "chmod(oct('0444'), '../blib/lib/PAR/StrippedPARL/Dynamic.pm');"
gmake[1]: Leaving directory `/LDM/par-packer from svn/myldr'
cp script/parl blib/script/parl
/usr/bin/perl "-Iinc" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/parl
cp script/parldyn blib/script/parldyn
/usr/bin/perl "-Iinc" -MExtUtils::MY -e 'MY->fixin(shift)' -- 
blib/script/parldyn
cp script/tkpp blib/script/tkpp
/usr/bin/perl "-Iinc" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/tkpp
cp script/pp blib/script/pp
/usr/bin/perl "-Iinc" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/pp
cp script/par.pl blib/script/par.pl
/usr/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::PodStrip.3
Manifying blib/man3/PAR::Filter::Obfuscate.3
Manifying blib/man3/PAR::Packer.3
Manifying blib/man3/App::Packer::PAR.3
Manifying blib/man3/PAR::Filter.3
Manifying blib/man3/PAR::StrippedPARL::Dynamic.3
Manifying blib/man3/PAR::Filter::PatchContent.3
Manifying blib/man3/PAR::Filter::Bytecode.3
Manifying blib/man3/pp.3
Manifying blib/man3/PAR::Filter::Bleach.3
Manifying blib/man3/PAR::StrippedPARL::Static.3

I went ahead and ran 'make install', then 'pp -o testy testy.pl', copied testy 
to the target machine, ran './testy' on the target machine and I still get:
dynamic linker : ./testy : count not open 
/usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/CORE/libperl.so

If I copy libperl.so from the build machine to the target machine in that 
directory then './testy' does work and prints out "Hello world" on the target 
machine.

Thanks Roderich! Let me know what to try next. I've can get things to work but 
it would be great to get libperl.so embedded so I don't have to copy it over.


-----Original Message-----
From: Roderich Schupp [mailto:[email protected]] 
Sent: Monday, February 14, 2011 6:21 AM
To: Michael Miller
Cc: [email protected]
Subject: Re: Trouble putting together a stand alone

On Mon, Feb 14, 2011 at 12:01 AM, Michael Miller <[email protected]> wrote:
> On the target machine, I copied the testy package and when I run it I get the 
> following error:
> Dynamic linker : ./testy : could not open 
> /usr/lib/perl5/5.8/i586-pc-sco3.2v5.0/CORE/libperl.so
>
> I'm assuming this means I need to include libperl.so along with my package.

No, libperl.so is supposed to be included in the executable generated by pp.
Adding it via "pp -a ..." won't help because we need it already for 
bootstrapping the packed executable, i.e. _before_ we can read anything in the 
.par that is part of the packed executable.

Obviously something went wrong when building PAR::Packer.
Can you post the log of a clean build of PAR::Packer, i.e.  the output from

$ perl Makefile.PL
$ make

> Let me know if you still want me to run the diagnostic script and get 
> you those files you were interested in.

Not needed anymore. I'll get rid of reading $Digest::SHA::VERSION from PAR and 
PAR::Packer anyway.

Cheers, Roderich

#####################################################################################
Attention:
The information contained in this message and or attachments is intended
only for the person or entity to which it is addressed and may contain
confidential and/or privileged material. Any review, retransmission,
dissemination or other use of, or taking of any action in reliance upon,
this information by persons or entities other than the intended recipient
is prohibited. If you received this in error, please contact the sender and
delete the material from any system and destroy any copies.
#####################################################################################

Reply via email to