develooper Front page | perl.par | Postings from August 2008

Re: Using pp to generate exe from pl in a cygwin env

Thread Previous | Thread Next
From:
bob davis
Date:
August 8, 2008 04:43
Subject:
Re: Using pp to generate exe from pl in a cygwin env
Message ID:
489C313D.9020205@bobsbits.net
I dont know about your error you are getting when executing pp.
I do know that when executing cpan to install a package there is an 
option to force the installation to happen even if "make test" fails.
That is as far as I got.

I did identify the line of code that was failing during the install that 
was including the wrong dll(perl). I found this because strawberry perl 
was including the wrong dll and I needed to fix it. Fixing it would only 
include cygperl5_8.dll, you would still need the other cygwin dll's to 
get the exe to work.

Tell me if you want more details about any of this.



Darin wrote:
> Hi Robert,
> What do you mean by force install? Can you give me your steps for working
> around this problem and solving the packaging issue for pp?
>
> Did you also see the error I sent after executing pp?
>
> Thanks.
>
> -Darin
>
> On Wed, Jul 23, 2008 at 7:55 AM, Darin <d.t.rajan@ieee.org> wrote:
>
>   
>> Hi Again,
>>
>> I am receiving the following error when trying to generate a windows
>> binary:
>>
>> $ pp -o cgsutil.exe cgsutil.pl
>> PAR::StrippedPARL::Static->get_raw() did not return the raw binary
>> data for a PAR loader at /usr/lib/perl5/5.8/PAR/StrippedPARL/Base.pm
>> line 141, <DATA> line 1.
>> Could not write temporary parl (class PAR::StrippedPARL::Static) to
>> file '/tmp/parlQgiI.exe' at
>> /usr/lib/perl5/5.8/PAR/StrippedPARL/Base.pm line 65, <DATA> line 1.
>> /usr/bin/pp: Failed to extract a parl from 'PAR::StrippedPARL::Static'
>> to file 'parlZOC8Q64.exe' at /usr/lib/perl5/5.8/PAR/Packer.pm line
>> 1157, <DATA> line 1.
>>
>> Thanks.
>>
>> -Darin
>>
>> On Wed, Jul 23, 2008 at 7:53 AM, Darin <d.t.rajan@ieee.org> wrote:
>>     
>>> Hello,
>>>
>>> Any help on this would help loads.
>>>
>>>
>>> There was one error from make test.
>>>
>>> $ make test
>>> make[1]: Entering directory `/cygdrive/c/dev/PAR-Packer-0.980/myldr'
>>> /usr/bin/perl5.8.7.exe -e "chmod(oct('0600'),
>>> '../blib/lib/PAR/StrippedPARL/Static.pm');"
>>> /usr/bin/perl5.8.7.exe encode_append.pl ./static.exe
>>> ../blib/lib/PAR/StrippedPARL/Static.pm
>>> /usr/bin/perl5.8.7.exe -e "chmod(oct('0444'),
>>> '../blib/lib/PAR/StrippedPARL/Static.pm');"
>>> /usr/bin/perl5.8.7.exe -e "chmod(oct('0600'),
>>> '../blib/lib/PAR/StrippedPARL/Dynamic.pm');"
>>> /usr/bin/perl5.8.7.exe encode_append.pl ./par.exe
>>> ../blib/lib/PAR/StrippedPARL/Dynamic.pm
>>> /usr/bin/perl5.8.7.exe -e "chmod(oct('0444'),
>>> '../blib/lib/PAR/StrippedPARL/Dynamic.pm');"
>>> make[1]: Leaving directory `/cygdrive/c/dev/PAR-Packer-0.980/myldr'
>>> /cygdrive/c/cygwin/bin/perl5.8.7.exe "-MExtUtils::Command::MM" "-e"
>>> "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/00-pod.t
>>> t/10-parl-generation.t  t/20-pp.t t/30-current_exec.t
>>> t/00-pod................skipped
>>>       all skipped: Set environment variable PERL_TEST_POD=1 to test POD
>>> t/10-parl-generation....ok
>>> t/20-pp.................skipped
>>>       all skipped: '/usr/bin/perl5.8.7.exe' not found
>>> t/30-current_exec.......# Please wait
>>> t/30-current_exec.......ok 2/4
>>> #   Failed test 'Found the same file via PATH and full path'
>>> #   at t/30-current_exec.t line 52.
>>> #          got: ''
>>> #     expected: '0 = /cygdrive/c/dev/PAR-Packer-0.980/t/test-10.exec
>>> # PAR_PROGNAME = /cygdrive/c/dev/PAR-Packer-0.980/t/test-10.exec
>>> # PAR_TEMP =
>>>       
>> /cygdrive/c/dev/PAR-Packer-0.980/t-tmp/par-drajan/cache-666d1f82b13c125a43eab90caed18f57
>>     
>>> # exec =
>>> # '
>>> t/30-current_exec.......NOK 3# Looks like you failed 1 test of 4.
>>> t/30-current_exec.......dubious
>>>       Test returned status 1 (wstat 256, 0x100)
>>> DIED. FAILED test 3
>>>       Failed 1/4 tests, 75.00% okay (less 1 skipped test: 2 okay, 50.00%)
>>> Failed Test         Stat Wstat Total Fail  Failed  List of Failed
>>>
>>>       
>> -------------------------------------------------------------------------------
>>     
>>> t/30-current_exec.t    1   256     4    1  25.00%  3
>>> 2 tests and 1 subtest skipped.
>>> Failed 1/4 test scripts, 75.00% okay. 1/35 subtests failed, 97.14% okay.
>>> make: *** [test_dynamic] Error 14
>>>
>>> I thought the issue for locating perl bin on a Win32 machine was
>>> resolved in a previous release.
>>>
>>> Thanks.
>>>
>>> -Darin
>>>
>>>
>>> ---------- Forwarded message ----------
>>> From: Steffen Mueller <smueller@ma2geo.mathematik.uni-karlsruhe.de>
>>> Date: Wed, Jul 23, 2008 at 4:56 AM
>>> Subject: Re: Using pp to generate exe from pl in a cygwin env
>>> To: Darin <d.t.rajan@ieee.org>
>>>
>>>
>>> Hi Darin,
>>>
>>> I'm sorry, I can't help you. First and foremost, I do not have an
>>> instance of cygwin nor any other win32 perl. You'd be *much* better off
>>> writing to the PAR mailing list as advertised in the PAR documentation.
>>> There's cygwin users on that list and the likelihood of receiving a
>>> timely response is much greater, too.
>>>
>>> That being said, it's very important that you include a description of
>>> how you installed the module, potentially with a log.
>>>
>>> The error you're facing is one from the make time. A "make test" run
>>> would have showed you that the installation is broken:
>>> PAR::StrippedPARL::Static (and ::Dynamic) is a container for the par
>>> loader without bootstrapping modules that is generated during make time.
>>> When you run pp, a copy of that "parl" binary is normally written to
>>> disk and then augmented with the newest, installed version of the
>>> necessary bootstrapping modules (PAR, Archive::Zip and friends). In your
>>> installed version of the container module, there's obviously no parl.
>>>
>>> Hope this helps a bit.
>>>
>>> Best regards,
>>> Steffen
>>>
>>>       
>
>   

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