Front page | perl.perl5.porters |
Postings from June 2008
Re: [perl #55038] Problem with porting perl on Armel
From:
Bram
Date:
June 10, 2008 01:44
Subject:
Re: [perl #55038] Problem with porting perl on Armel
Message ID:
20080610104256.m2four0z4skookgk@horde.wizbit.be
Citeren devendra purbiya <devendra.purbiya@gmail.com>:
> Hi Bram,
> Porting latest qemu itself will take quite some time. So as of now that
> option is open.
> I agree with you related to broken perl thing. But I dont see other option
> than skipping tests.
> I am not sure of the fourth option. As in how to do it. Can you guide me
> regarding that.
Not really...
I know absoltly nothing about qemu...
A starting point could be to do an strace which might reveal what
syscall is being called...
Another starting point could be a/the qemu lists to see if there is a
way to silence the warnings (perhaps via some options?)
Another way could be to modifiy the qemu source and place the warning
in comment.
> I tried running a perl script which has following things,
>
> use FindBin;
> use File::Path;
> use File::Spec;
> use File::Basename;
> use Getopt::Long;
> use Cwd 'abs_path';
> use POSIX qw(sys_wait_h strftime);
>
> use strict;
>
> which run on the target hardware. So I am not sure if there are problems
> with the perl.
That test is way too small.
(And basically only tests if it can load a .pm file and can compile
it. It does not test the functions in the modules - which might return
something completly incorrect)
> Regards,
> Devendra.
>
>
> On Mon, Jun 2, 2008 at 6:32 PM, Bram <p5p@perl.wizbit.be> wrote:
>
>> Quoting devendra purbiya <devendra.purbiya@gmail.com>:
>>
>> Hi Bram,
>>> I tried looking at that link. According to that, the qemu version we
>>> are
>>> using, does not emulate all the commands for arm.
>>>
>>
>> Did you try the latest version?
>> And/Or the latest development version?
>> (I know absoltly nothing about qemu)
>>
>> So as of now I have two options.
>>> 1. To eliminate some tests. (Is this possible?)
>>>
>>
>> You can skip tests yes... but then no one knows if your perl really works
>> or if it is broken (maybe in subtle ways).
>> The tests are there for a reason.
>>
>> 2. Try to debug the tests to make them run on our qemu. (Looks quite tough
>>> right now)
>>>
>>
>> Your third option is to find out what syscall 338 is and see if it can be
>> added to qemu.
>>
>> Your foruth option is to try to silence the error. Some test expect the
>> output on STDERR in a particular order andon particular lines. If there is
>> another error in that output the test fails.
>>
>>
>> Also what I have noticed is that in case I skip make test. And directly
>>> try
>>> to build a debian binary using checkinstall utility. And I tested the perl
>>> binary on our target. And it worked fine.
>>>
>>
>> Define fine?
>> How did you test it?
>> The only way to make sure it runs fine is to run make test (and even then
>> you can't be 100% sure)
>>
>>
>> But the only catch with this
>>> situation is that checkinstall generates only a single binary. And I want
>>> all the packages generated by perl package.
>>>
>>> Regards,
>>> Dev.
>>>
>>>
>>> On Fri, May 30, 2008 at 5:35 PM, Bram <p5p@perl.wizbit.be> wrote:
>>>
>>> Quoting devendra purbiya <devendra.purbiya@gmail.com>:
>>>>
>>>> Hi Bram,
>>>>
>>>>> Below is the result of running all the commands you have mentioned.
>>>>> [sbox-cosmos0.1.4_armel: ~/PERL-ARM/perl-5.8.8/t] > ./perl -wle 'print
>>>>> "\$^X
>>>>> = $^X";print $^X =~ m/\s/ ? qq{"$^X"} : $^X;'
>>>>> qemu: Unsupported syscall: 338
>>>>> $^X = ./perl
>>>>> ./perl
>>>>>
>>>>>
>>>> I suggest you look at
>>>> http://www.google.com/search?&q=%22qemu:+Unsupported+syscall%22
>>>> and see if it mentions something useful...
>>>>
>>>>
>>>> [sbox-cosmos0.1.4_armel: ~/PERL-ARM/perl-5.8.8/t] > ./perl harness -v
>>>>
>>>>> ../ext/B/t/lint.t
>>>>> qemu: Unsupported syscall: 338
>>>>> ../ext/B/t/lint....qemu: Unsupported syscall: 338
>>>>> qemu: Unsupported syscall: 338
>>>>> 1..15
>>>>> # Failed at ../ext/B/t/lint.t line 31
>>>>> # got 'qemu: Unsupported syscall: 338
>>>>> # Implicit scalar context for array in scalar assignment at -e line 1
>>>>> # '
>>>>> # expected 'Implicit scalar context for array in scalar assignment at -e
>>>>> line 1
>>>>> # '
>>>>> not ok 1 - context
>>>>> # Failed at ../ext/B/t/lint.t line 31
>>>>> # got 'qemu: Unsupported syscall: 338
>>>>> # Implicit scalar context for array in length at -e line 1
>>>>> # '
>>>>> # expected 'Implicit scalar context for array in length at -e line 1
>>>>> # '
>>>>> not ok 2 - context
>>>>> # Failed at ../ext/B/t/lint.t line 31
>>>>> # got 'qemu: Unsupported syscall: 338
>>>>> # Implicit match on $_ at -e line 1
>>>>> # '
>>>>> # expected 'Implicit match on $_ at -e line 1
>>>>> # '
>>>>> not ok 3 - implicit-read
>>>>> # Failed at ../ext/B/t/lint.t line 31
>>>>> # got 'qemu: Unsupported syscall: 338
>>>>> # Implicit substitution on $_ at -e line 1
>>>>> # '
>>>>> # expected 'Implicit substitution on $_ at -e line 1
>>>>> # '
>>>>> not ok 4 - implicit-write
>>>>> ok 5 # skip: Doesn't work with threaded perls
>>>>> ok 6 # skip: Doesn't work with threaded perls
>>>>> ok 7 # skip: Doesn't work with threaded perls
>>>>> ok 8 # skip: Doesn't work with threaded perls
>>>>> ok 9 # skip: Doesn't work with threaded perls
>>>>> ok 10 # skip: Doesn't work with threaded perls
>>>>> ok 11 # skip: Doesn't work with threaded perls
>>>>> ok 12 # skip: Doesn't work with threaded perls
>>>>> ok 13 # skip: Doesn't work with threaded perls
>>>>> ok 14 # skip: Doesn't work with threaded perls
>>>>> ok 15 # skip: Doesn't work with threaded perls
>>>>> FAILED tests 1-4
>>>>> Failed 4/15 tests, 73.33% okay
>>>>> Failed Test Stat Wstat Total Fail Failed List of Failed
>>>>>
>>>>>
>>>>> -------------------------------------------------------------------------------
>>>>> ../ext/B/t/lint.t 15 4 26.67% 1-4
>>>>> Failed 1/1 test scripts, 0.00% okay. 4/15 subtests failed, 73.33% okay.
>>>>> [sbox-cosmos0.1.4_armel: ~/PERL-ARM/perl-5.8.8/t] > ./perl -I../lib
>>>>> -MO=Lint
>>>>> -e '$foo = @bar';
>>>>> qemu: Unsupported syscall: 338
>>>>> Implicit scalar context for array in scalar assignment at -e line 1
>>>>> -e syntax OK
>>>>> [sbox-cosmos0.1.4_armel: ~/PERL-ARM/perl-5.8.8/t] > export
>>>>> PERL_RUNPERL_DEBUG=1
>>>>> [sbox-cosmos0.1.4_armel: ~/PERL-ARM/perl-5.8.8/t] > ./perl harness -v
>>>>> ../ext/B/t/lint.t
>>>>> qemu: Unsupported syscall: 338
>>>>> ../ext/B/t/lint....qemu: Unsupported syscall: 338
>>>>> qemu: Unsupported syscall: 338
>>>>> 1..15
>>>>> # Failed at ../ext/B/t/lint.t line 31
>>>>> # got '/scratchbox/tools/bin/sh: line 1: 1: command not found
>>>>> # '
>>>>> # expected 'Implicit scalar context for array in scalar assignment at -e
>>>>> line 1
>>>>> # '
>>>>> not ok 1 - context
>>>>> # Failed at ../ext/B/t/lint.t line 31
>>>>> # got '/scratchbox/tools/bin/sh: line 1: 1: command not found
>>>>> # '
>>>>> # expected 'Implicit scalar context for array in length at -e line 1
>>>>> # '
>>>>> not ok 2 - context
>>>>> # Failed at ../ext/B/t/lint.t line 31
>>>>> # got '/scratchbox/tools/bin/sh: line 1: 1: command not found
>>>>> # '
>>>>> # expected 'Implicit match on $_ at -e line 1
>>>>> # '
>>>>> not ok 3 - implicit-read
>>>>> # Failed at ../ext/B/t/lint.t line 31
>>>>> # got '/scratchbox/tools/bin/sh: line 1: 1: command not found
>>>>> # '
>>>>> # expected 'Implicit substitution on $_ at -e line 1
>>>>> # '
>>>>> not ok 4 - implicit-write
>>>>> ok 5 # skip: Doesn't work with threaded perls
>>>>> ok 6 # skip: Doesn't work with threaded perls
>>>>> ok 7 # skip: Doesn't work with threaded perls
>>>>> ok 8 # skip: Doesn't work with threaded perls
>>>>> ok 9 # skip: Doesn't work with threaded perls
>>>>> ok 10 # skip: Doesn't work with threaded perls
>>>>> ok 11 # skip: Doesn't work with threaded perls
>>>>> ok 12 # skip: Doesn't work with threaded perls
>>>>> ok 13 # skip: Doesn't work with threaded perls
>>>>> ok 14 # skip: Doesn't work with threaded perls
>>>>> ok 15 # skip: Doesn't work with threaded perls
>>>>> FAILED tests 1-4
>>>>> Failed 4/15 tests, 73.33% okay
>>>>> Failed Test Stat Wstat Total Fail Failed List of Failed
>>>>>
>>>>>
>>>>> -------------------------------------------------------------------------------
>>>>> ../ext/B/t/lint.t 15 4 26.67% 1-4
>>>>> Failed 1/1 test scripts, 0.00% okay. 4/15 subtests failed, 73.33% okay.
>>>>>
>>>>> Thanks,
>>>>> Devendra.
>>>>>
>>>>>
>>>>> On Fri, May 30, 2008 at 3:56 PM, Bram <p5p@perl.wizbit.be> wrote:
>>>>>
>>>>> Quoting devendra purbiya <devendra.purbiya@gmail.com>:
>>>>>
>>>>>>
>>>>>> Hi Bram,
>>>>>>
>>>>>> I tried to run ./perl harness -v, and below is the result I get. Also
>>>>>>> I
>>>>>>> am using arm-v5te-linux-gnueabi cross compiler.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> Can you run:
>>>>>>
>>>>>> ./perl -wle 'print "\$^X = $^X";print $^X =~ m/\s/ ? qq{"$^X"} : $^X;'
>>>>>>
>>>>>> And:
>>>>>>
>>>>>> ./perl harness -v ../ext/B/t/lint.t
>>>>>>
>>>>>> And:
>>>>>>
>>>>>> ./perl -I../lib -MO=Lint -e '$foo = @bar';
>>>>>>
>>>>>>
>>>>>> And:
>>>>>>
>>>>>> export PERL_RUNPERL_DEBUG=1
>>>>>> ./perl harness -v ../ext/B/t/lint.t
>>>>>>
>>>>>>
>>>>>> Kind regards,
>>>>>>
>>>>>> Bram
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>
>>
>>
>>
>