Unable to make install for p5 ports

Herbert J. Skuhra h.skuhra at gmail.com
Mon Dec 21 13:35:21 UTC 2015


On Sun, 20 Dec 2015 23:44:26 +0100,
Stefan Bethke <stb at lassitu.de> wrote:
> 
> 
> > Am 20.12.2015 um 23:39 schrieb Stefan Bethke <stb at lassitu.de>:
> > 
> >> 
> >> Am 20.12.2015 um 21:44 schrieb olli hauer <ohauer at gmx.de>:
> >> 
> >> On 2015-12-20 21:26, Stefan Bethke wrote:
> >>> 
> >>>> Am 20.12.2015 um 21:15 schrieb Stefan Bethke <stb at lassitu.de>:
> >>>> 
> >>>> For many perl ports, I’m getting errors similar to this:
> >>>> 
> >>>> ...
> >>>> Installing /usr/obj/ports/freebsd/checkout/ports/net/p5-Net-Server/stage/usr/local/lib/perl5/site_perl/man/man1/net-server.1
> >>>> ...
> >>>> Installing /usr/obj/ports/freebsd/checkout/ports/net/p5-Net-Server/stage/usr/local/bin/net-server
> >>>> ====> Compressing man pages (compress-man)
> >>>> ===>  Installing for p5-Net-Server-2.008_1
> >>>> ===>  Checking if p5-Net-Server already installed
> >>>> ===>   Registering installation for p5-Net-Server-2.008_1 as automatic
> >>>> pkg-static: Unable to access file /usr/obj/ports/freebsd/checkout/ports/net/p5-Net-Server/stage/usr/local/share/man/man1/net-server.1.gz: No such file or directory
> >>>> *** [fake-pkg] Error code 74
> >>>> 
> >>>> Stop in /freebsd/checkout/ports/net/p5-Net-Server.
> >>>> *** [install] Error code 1
> >>>> 
> >>>> Stop in /freebsd/checkout/ports/net/p5-Net-Server.
> >>>> *** [build-depends] Error code 1
> >>>> 
> >>>> Stop in /freebsd/checkout/ports/sysutils/munin-node.
> >>>> *** [stage] Error code 1
> >>>> 
> >>>> Stop in /freebsd/checkout/ports/sysutils/munin-node.
> >>>> 
> >>>> 
> >>>> I’ve tried upgrading my perl to 5.20, but I’m running into the same issue.
> >>>> 
> >>>> FreeBSD 9-stable, perl 5.20.
> >>> 
> >>> After fiddling around with the stage dir, it seems that the port installs man pages for command line utilities into stage/usr/local/lib/perl5/site_perl/man, while pig-static expects them in stage/usr/local/share/man.
> >> 
> >> Hi Stefan,
> >> 
> >> no, the man page location looks fine.
> >> Perl man pages are installed to "/usr/local/lib/perl5/site_perl/man" and pkg-plist has the location defined as PERL5_MAN3.
> > 
> > Please look at the error message above. pig-static expects the man page in one place, but the port installs in in a different place inside the stage dir.  Only man1 pages seem to be affected, AFAIKT.
> 
> Here’s how I can „fix“ it manually:
> ====> Compressing man pages (compress-man)
> ===>  Installing for p5-DBI-1.634
> ===>  Checking if p5-DBI already installed
> ===>   Registering installation for p5-DBI-1.634
> pkg-static: Unable to access file /var/ports/work/databases/p5-DBI/stage/usr/local/share/man/man1/dbilogstrip.1.gz: No such file or directory
> pkg-static: Unable to access file /var/ports/work/databases/p5-DBI/stage/usr/local/share/man/man1/dbiprof.1.gz: No such file or directory
> pkg-static: Unable to access file /var/ports/work/databases/p5-DBI/stage/usr/local/share/man/man1/dbiproxy.1.gz: No such file or directory
> *** [fake-pkg] Error code 74
> 
> Stop in /usr/ports/databases/p5-DBI.
> *** [install] Error code 1
> 
> Stop in /usr/ports/databases/p5-DBI.
> /usr/ports/databases/p5-DBI# cd /var/ports/work/databases/p5-DBI/stage/usr/local/share
> /var/ports/work/databases/p5-DBI/stage/usr/local/share# mkdir man
> /var/ports/work/databases/p5-DBI/stage/usr/local/share# mv ../lib/perl5/site_perl/man/man1 man
> /var/ports/work/databases/p5-DBI/stage/usr/local/share# cd -
> /usr/ports/databases/p5-DBI
> /usr/ports/databases/p5-DBI# make install
> ===> Skipping 'config' as NO_DIALOG is defined
> ===>  Installing for p5-DBI-1.634
> ===>   p5-DBI-1.634 depends on file: /usr/local/bin/perl5.20.3 - found
> ===>  Checking if p5-DBI already installed
> ===>   Registering installation for p5-DBI-1.634
> [XXX] Installing p5-DBI-1.634...
> /usr/ports/databases/p5-DBI# 

I guess something sets THIS_IS_OLD_PERL on your system.
Do you set PERL_VERSION or does the file /usr/local/etc/perl5_version
exists?

# remove when 5.20 goes away.
.sinclude "${LOCALBASE}/etc/perl5_version"
.if defined(PERL_VERSION)
PERL5_DEPEND=   ${PERL5}
THIS_IS_OLD_PERL=       yes   
.else
[...]
.if defined(THIS_IS_OLD_PERL)
SITE_MAN1_REL?= share/man/man1
.else
SITE_MAN1_REL?= ${SITE_PERL_REL}/man/man1
.endif
SITE_MAN1?=     ${PREFIX}/${SITE_MAN1_REL}

--
Herbert


More information about the freebsd-ports mailing list