On Mon, May 25, 2009 at 08:07:16PM -0400, STeve Andre' wrote:
>    Given that I see parrot-.0.9.0.1 in the snapshot package area, it is
> my fault that I cannot build & package it myself.  I've been puzzling
> over this for a bit now, and am finally asking for a clue.  I have
> script output of the entire process but it compiles ok--its a package
> building time that produces the error.  
> 
> Clues appreciated.

Now, as you where building this port as root and that failed. Here is
the clue:

# grep perldoc ./build-log-as-root
auto::perldoc -       Is perldoc installed.................................no.


This is related to droping priviliges when perldoc(1) is ran as root.
Look at function drop_privs_maybe in file:

        
http://www.openbsd.org/cgi-bin/cvsweb/src/gnu/usr.bin/perl/lib/Pod/Perldoc.pm

In parrot sources you have file `config/auto/perldoc.pm' and there you
can see how above `auto::perldoc' test is done.

IIRC, auto::perldoc creates temp file to grab output form perldoc. Build
is done as root, so owner of temp file is root. perldoc(1) drops to user
`nobody' and nobody cannot write to file created by File::Temp as root.

File is empty and `auto::perldoc' thinks no perldoc(1) is installed.
Even if you fake that part, you need to also modify build so those
perldoc(1) will not fail later in the build.

Sorry, I canot do more, about this issue, than explain the problem.

-- 
best regards
q#

Reply via email to