Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 13920 - perl installation may break other apps
Summary: perl installation may break other apps
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: Normal major (vote)
Assignee: Michael Cummings (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-01-14 11:17 UTC by Max Kalika (RETIRED)
Modified: 2003-02-04 19:42 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Max Kalika (RETIRED) gentoo-dev 2003-01-14 11:17:22 UTC
If the perl installation sees that there is a /usr/local/scripts directory it
will put all of its scripts (pod2man, etc) there instead of /usr/bin.  What's
worse is that if that directory is *not* in the PATH other things may break
(such as gcc-3.2.1-r6 in my case -- it looks for pod2man).  This can be fixed by
adding the following to the configure line of the perl ebuild:

  -Dscriptdir=/usr/bin

to force perl to install scripts into that location.  This _may_ also be the
reason for bug 12413, but I don't know if perl was emerged in that case.

As a temporary workaround, to force perl to install scripts into /usr/bin, one
can move /usr/local/scripts to some other location; remerge perl; move
/usr/local/scripts back.
Comment 1 Michael Cummings (RETIRED) gentoo-dev 2003-01-14 11:50:32 UTC
Thanks for the pointer! Will look into getting this into the ebuild as soon as 
i can.

Mike
Comment 2 Michael Cummings (RETIRED) gentoo-dev 2003-01-15 07:18:17 UTC
Hmmmm....ok, I have to step back and recant a touch. According to the Config.pm 
from both the currently released and the beta release of perl5.8 I am working 
on, the installscript var is set to /usr/bin already. Can you confirm this with 
your installation? Was it a particular app that was going awry? If this is in 
regards to man pages, I have another bug open regarding that and am working on 
it (the man1 and man3 paths were not getting set correctly).
Comment 3 Max Kalika (RETIRED) gentoo-dev 2003-01-15 11:56:07 UTC
For me it was the gcc update that died because it couldn't find pod2man, and 
that is because pod2man resided in /usr/local/scripts.  Here is a simple way to 
recreate the problem (I did these steps as I wrote this report to verify).

First, here is the working installation:
  zion perl # epm -ql perl | grep pod2man
  /usr/bin/pod2man
  /usr/share/man/man1/pod2man.1.gz

Next, create the /usr/local/scripts directory, remerge perl and check again:
  zion perl # mkdir /usr/local/scripts
  zion perl # emerge perl
  ...
  zion perl # epm -ql perl | grep pod2man
  /usr/local/scripts/pod2man
  /usr/share/man/man1/pod2man.1.gz

Then I tried "fixing" the ebuild, remerge perl and check again:
  Add "-Dscriptdir='/usr/bin' \" on line 249 of perl-5.8.0-r8.ebuild
  zion perl # emerge perl
  ...
  zion perl # epm -ql perl | grep pod2man
  /usr/bin/pod2man
  /usr/share/man/man1/pod2man.1.gz

As you can see the scriptdir flag forced perl to install pod2man and friends 
into correct locations.  Now gcc compiles happily.


Side note. When twiddling with the perl ebuild I noticed lines 207 and 248 have 
the following:

            -Dsiteprefixx='/usr' \

This looks like a typo (two x's).  Please forgive me if I'm wrong.  I couldn't 
find 'siteprefixx' anywhere in perl's Configure, however, 'siteprefix' is 
certainly there.  It is very possible that this typo is what is causing perl to 
misbehave with regards to its publicly accessible scripts.  I haven't 
tried "fixing" this to see if resolves my issue though -- the machine I have 
access to do these things on is painfully slow. :-)
Comment 4 Michael Cummings (RETIRED) gentoo-dev 2003-01-15 15:13:08 UTC
OK, this bug and bug 13886 look to be the same problem, albeit hidden. There
appears to be a typo introduced into the generation of the config.over that is
failing the setting of the scripts dir (which is done in the ebuild) as well as
the setting of the man page location. Working on it now.

Mike
Comment 5 Michael Cummings (RETIRED) gentoo-dev 2003-01-15 19:44:09 UTC
there was a typo in the setting of the config.over file that caused our setting
of the scriptdir to get voided. A version of the perl ebuild with the typos
corrected has just been released into portage. Please verify and close out if
all is good for you (looks good to me and my testers, but would like
confirmation from you).
Comment 6 Max Kalika (RETIRED) gentoo-dev 2003-01-15 23:20:59 UTC
Negative :(   just remerged the new perl (-r9)

zion perl # epm -q perl
perl-5.8.0-r9

zion perl # ls -ld /usr/local/scripts
drwxr-xr-x    2 root     root          696 Jan 15 21:04 /usr/local/scripts

zion perl # epm -ql perl | grep pod2man
/usr/local/scripts/pod2man
/usr/share/man/man1/pod2man.1.gz
Comment 7 Michael Cummings (RETIRED) gentoo-dev 2003-01-16 10:39:57 UTC
Max,

     I'm not sure what's going on on your end.
gnosis # grep pod2man /var/db/pkg/sys-devel/perl-5.8.0-r9/CONTENTS 
obj /usr/bin/pod2man 4d3b344a9ed41980f3db000efc2ac557 1042668324
obj /usr/share/man/man1/pod2man.1.gz f529d18b958fa1eab3107c19b99a010f 1042668324

It's installing right over here...
Comment 8 Max Kalika (RETIRED) gentoo-dev 2003-01-16 11:45:32 UTC
How odd.  I just had a friend try it (just to test my sanity) and he experienced
the same thing I had.  He made a directory "/usr/local/scripts" and emerged
perl.  His CONTENTS file showed /usr/local/scripts/pod2man.  Are you sure you
had the /usr/local/scripts directory made?  How did you emerge perl?  (All we're
doing is "emerge perl").  I am at a loss...
Comment 9 Michael Cummings (RETIRED) gentoo-dev 2003-01-16 14:14:28 UTC
I see the difference! (Only took you saying it over and over again for it to be
clear).The Configure script for perl was interpreting a scriptsdir despite our
settings in the config.over. The -Dscriptdir=/usr/bin has been added to the
config flags - that and the config.over should take care of this problem for
other users. Also, thanks for the catch on the double x's in the config flags,
that has been corrected.  Thank you for patience these last few days,

Mike
Comment 10 Michael Cummings (RETIRED) gentoo-dev 2003-01-26 10:27:42 UTC
This is now fixed in the ebuild
Comment 11 Max Kalika (RETIRED) gentoo-dev 2003-01-27 12:07:53 UTC
confirmed working.  thank you!