2010/3/29 Andy Dougherty <[email protected]>:
> On Sun, 28 Mar 2010, Fran?ois Perrad wrote:
>
>> 2010/3/28 Andy Dougherty <[email protected]>:
>
>> > I'm pretty sure this is a recurrence of [perl #66560].  See that ticket
>> > for the diagnosis and fix currently in use in rakudo.
>> >
>> > However, it's not at all obvious to me how someone trying to
>> > install rakudo could fix it.  At least with a Makefile, it's
>> > often obvious how you can hand-edit the Makefile and try to fix it.
>> > Here, it's not.  Looking at the trace at the end, it refers to a file
>> > "runtime/parrot/library/distutils.pir" which doesn't exist.  (It may have
>> > existed in the build directory, but that's not around anymore.)  There is
>> > a file distutils.pir in $prefix/lib/2.2.0-dev/library, but editing it
>> > (assuming you have permission) doesn't appear to change anything.  I
>> > expect that's because the precompiled distutils.pbc file is loaded
>> > instead.
>>
>> yes, but you could modify the setup.nqp (line 7)
>>     pir::load_bytecode('distutils.pir');
>> by this way, you load a distutils.pir file with your alteration.
>>
>> the attached patch adds the option --no-lines
>
> Thanks.  I can verify that if I make a copy of parrot's distutils.pir in
> the rakudo directory, apply this patch, and add a leading space, changing
>    +    pmc2c .= "--no-lines "
> to
>    +    pmc2c .= " --no-lines "
>
> then the rakudo build gets past this step.  (It runs out of memory
> building src/gen/perl6-actions.pir, but that happens with the plain
> Makefile too, and is not relevant to the point at hand.)
>
> Another way to attack the problem is to avoid the chdir().  Specifically,
> the problem arises because pmc2c is called from one directory (and #line
> directives are generated accordingly) and then chdir() is called, and the
> compiler is called from a different directory (at which point the #line
> directives are now wrong).  In the original RT, I suggested avoiding the
> chdir(), but rakudo was doing essentially
>
>        cd src/pmc && cc -c *.c
>

Andy,

since r45285, distutils works without chdir(),
could you try to revert r45273 on OpenSolaris/x86 ?

François

> and Patrick wanted to avoid having to manually maintain the list that *.c
> expanded to.  Since setup.nqp appears to manually maintain that list
> anyway, it could avoid the cd, which would have avoided the whole problem
> to start with.
>
> More broadly, I also thought it worth highlighting how when distutils
> doesn't work, it can be difficult for an ordinary user to do anything
> about it.  This is a portability and support question that the rakudo
> folks should consider carefully before deciding what to do.
>
> --
>    Andy Dougherty              [email protected]
>
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to