From owner-freebsd-ports@FreeBSD.ORG Mon Nov 3 16:01:27 2003 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D491616A4CF for ; Mon, 3 Nov 2003 16:01:27 -0800 (PST) Received: from magnesium.net (toxic.magnesium.net [207.154.84.15]) by mx1.FreeBSD.org (Postfix) with SMTP id 106F843FDF for ; Mon, 3 Nov 2003 16:01:27 -0800 (PST) (envelope-from adamw@magnesium.net) Received: (qmail 55875 invoked by uid 1252); 4 Nov 2003 00:01:26 -0000 Date: 3 Nov 2003 19:01:26 -0500 Date: Mon, 3 Nov 2003 19:01:26 -0500 From: Adam Weinberger To: Vivek Khera Message-ID: <20031104000126.GD96543@toxic.magnesium.net> Mail-Followup-To: Adam Weinberger , Vivek Khera , ports@freebsd.org References: <16294.34255.356451.725973@yertle.int.kciLink.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <16294.34255.356451.725973@yertle.int.kciLink.com> X-Editor: Vim 6.2 http://www.vim.org X-Mailer: Mutt 1.5 http://www.mutt.org X-URL: http://www.vectors.cx X-ASL: 6/m/behind you User-Agent: Mutt/1.5.4i cc: ports@freebsd.org Subject: Re: ports containing perl modules go into /lib instead of /usr/local/lib X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 00:01:28 -0000 >> (11.03.2003 @ 1143 PST): Vivek Khera said, in 2.9K: << > For a while now, it seems that ports containing perl modules (such as > ImageMagick, rrdtool, and net-snmp to name a few) install the perl > components into /lib/perl5 instead of /usr/local/lib/perl5 like they > should (and as the pkg-plist expects). > > Needless to say, this is bad. :-( > > Anyhow, has anyone else experienced this? I'm running a 4.8-STABLE > from mid-July, but it also happens on my recently upgraded > 4.9-RELEASE. Both boxes are running perl 5.6.1 from ports, with the > appropriate settings in the /etc/make.conf file (ie, I ran "use.perl > port"; /usr/bin/perl -v says "5.6.1") You're not the only one with this problem. A friend of mine has this problem on his server, which runs 4.8-STABLE from around August, and perl 5.8.1. He noticed the problem with irssi installing stuff into /lib. Sure enough, ${prefix} was being emptied, for some bizarre reason. I have no idea why this is, and I look forward to hearing input from others on this list. But, you're not alone in experiencing this. # Adam > > I tried tracking the problem for the rrdtool build. When the port is > built, it goes something like this: > > cd perl-shared && /usr/bin/perl Makefile.PL > Checking if your kit is complete... > Looks good > Writing Makefile for RRDs > cd perl-shared && gmake > > .. then goes on to build the module and a bunch of other stuff. when > we get around to the install phase ... > > cd perl-shared && gmake install > gmake[3]: Entering directory `/var/tmp/u/sources/usr/ports/net/rrdtool/work/rrdt > ool-1.0.45/perl-shared' > Installing /lib/perl5/site_perl/5.6.1/mach/auto/RRDs/RRDs.so > Installing /lib/perl5/site_perl/5.6.1/mach/auto/RRDs/RRDs.bs > Files found in blib/arch: installing files in blib/lib into architecture depende > nt library tree > Installing /lib/perl5/site_perl/5.6.1/mach/ntmake.pl > Installing /lib/perl5/site_perl/5.6.1/mach/RRDs.pm > Writing /lib/perl5/site_perl/5.6.1/mach/auto/RRDs/.packlist > Appending installation info to /usr/local/lib/perl5/5.6.1/mach/perllocal.pod > > > If I go to that perl-shared directory and type "/usr/bin/perl > Makefile.PL" the resulting Makefile is significanly different: > > 82c82 > < INSTALLSITELIB = $(PREFIX)/lib/perl5/site_perl/5.6.1 > --- > > INSTALLSITELIB = $(SITEPREFIX)/lib/perl5/site_perl/5.6.1 > 88c88 > < INSTALLSITEARCH = $(PREFIX)/lib/perl5/site_perl/5.6.1/mach > --- > > INSTALLSITEARCH = $(SITEPREFIX)/lib/perl5/site_perl/5.6.1/mach > 92c92 > < INSTALLBIN = $(PREFIX)/bin > --- > > INSTALLBIN = $(PERLPREFIX)/bin > 98c98 > < INSTALLSCRIPT = $(PREFIX)/bin > --- > > INSTALLSCRIPT = $(PERLPREFIX)/bin > 100c100 > < INSTALLMAN1DIR = $(PREFIX)/man/man1 > --- > > INSTALLMAN1DIR = $(PERLPREFIX)/man/man1 > 106c106 > < INSTALLMAN3DIR = $(PREFIX)/lib/perl5/5.6.1/man/man3 > --- > > INSTALLMAN3DIR = $(PERLPREFIX)/lib/perl5/5.6.1/man/man3 > > > Note also that "PREFIX" is *empty* in the resulting Makefiles, which > is why the modules are installed in /lib rather than /usr/local/lib. > > What could cause this to generate such significantly different output? > I don't really see anything in my environment that would cause perl to > behave differently. > > Right now I just go back into those build directories and re-run the > build + install to get the bits installed, but this is a painful > workaround. > > _______________________________________________ > freebsd-ports@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-ports > To unsubscribe, send any mail to "freebsd-ports-unsubscribe@freebsd.org" >> end of "ports containing perl modules go into /lib instead of /usr/local/lib" from Vivek Khera << -- Adam Weinberger vectors.cx >> adam@vectors.cx >> http://www.vectors.cx magnesium.net << adamw@magnesium.net << http://www.magnesium.net/~adamw FreeBSD >> adamw@FreeBSD.org >> http://people.freebsd.org/~adamw #vim:set ts=8: 8-char tabs prevent tooth decay.