Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 9314 - Unable to make install perl-5.6.1-r7 with default rsynced Stage2 tarball
Summary: Unable to make install perl-5.6.1-r7 with default rsynced Stage2 tarball
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Michael Cummings (RETIRED)
URL:
Whiteboard:
Keywords:
: 466 10169 10975 (view as bug list)
Depends on:
Blocks:
 
Reported: 2002-10-18 12:42 UTC by Jeroen Stamps
Modified: 2003-02-04 19:42 UTC (History)
7 users (show)

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 Jeroen Stamps 2002-10-18 12:42:12 UTC
First of all, this is my very first bug-report ever made. I have done my best to
search the existing bug reports first, but if this is a duplicate, feel free to
rub my face in the dirt (and on the bug this is a duplicate of) :-)

After performing the following steps:
- Following the gentoo-website installation instructions while using the Stage2
tarball (release 1.4rc1) for Pentium2 (I have a Celeron 300A).
- Changing the make.conf to contain the following:

USE="mmx 3dfx gphoto2 scanner cups slp X dga opengl xv fbcon -kde -arts
gnome gtk evo -motif tcltk aalib imlib ncurses -readline sdl svga lcms
gif jpeg png tiff -gd avi mpeg quicktime alsa esd mikmod pss nas -ggi
dvd xmms oggvorbis -flash encode -ipv6 snmp ggz pam ssl crypt socks5
imap ldap maildir -mbox tcpd -xface mozilla -mozaccess-builtin -mozctl
-mozirc -mozxmlterm -spell truetype xml xml2 pdflib -plotutils -tetex
guile java perl python -ruby -slang libwww libg++ -atlas -pic -zeo
berkdb mysql -postgres -oci8 -odbc -innodb -gdbm -acl -afs samba -nls
doc gpm -cjk -canna -freewnn -mule zlib"

CFLAGS="-mcpu=pentium2 -march=pentium2 -O3 -pipe -fomit-frame-pointer
-fmerge-constants -malign-double -mmmx -fregmove -fmove-all-movables"

- emerge sync
- emerge system

... the following error(s) occurred while making the perl package:

Greetings, Jeroen Stamps

(upon requests, I have the complete log of running emerge system)

<snip>
io/fs................FAILED at test 17
io/open..............FAILED at test 15
<snip>
op/stat..............FAILED at test 2
op/sysio.............FAILED at test 13
<snip>
lib/filefind.........Can't cd to (./proc/2273/) fd : Permission denied
Can't cd to (./proc/2225/) fd : Permission denied
Can't cd to (./proc/2217/) fd : Permission denied
Can't cd to (./proc/2214/) fd : Permission denied
Can't cd to (./proc/2212/) fd : Permission denied
Can't cd to (./proc/2101/) fd : Permission denied
Can't cd to (./proc/2100/) fd : Permission denied
Can't cd to (./proc/2099/) fd : Permission denied
Can't cd to (./proc/2098/) fd : Permission denied
Can't cd to (./proc/2097/) fd : Permission denied
Can't cd to (./proc/2096/) fd : Permission denied
Can't cd to (./proc/2095/) fd : Permission denied
Can't cd to (./proc/2056/) fd : Permission denied
Can't cd to (./proc/2052/) fd : Permission denied
Can't cd to (./proc/94/) fd : Permission denied
Can't cd to (./proc/13/) fd : Permission denied
Can't cd to (./proc/12/) fd : Permission denied
Can't cd to (./proc/10/) fd : Permission denied
Can't cd to (./proc/6/) fd : Permission denied
Can't cd to (./proc/5/) fd : Permission denied
Can't cd to (./proc/4/) fd : Permission denied
Can't cd to (./proc/3/) fd : Permission denied
Can't cd to (./proc/2/) fd : Permission denied
Can't cd to (./proc/1/) fd : Permission denied
ESC[31;01mACCESS DENIEDESC[0m  mkdir:     /for_find
ESC[31;01mACCESS DENIEDESC[0m  rmdir:     /fa/faa
ESC[31;01mACCESS DENIEDESC[0m  rmdir:     /fa/fab/faba
ESC[31;01mACCESS DENIEDESC[0m  rmdir:     /fa/fab
ESC[31;01mACCESS DENIEDESC[0m  rmdir:     /fa
ESC[31;01mACCESS DENIEDESC[0m  rmdir:     /fb/fba
ESC[31;01mACCESS DENIEDESC[0m  rmdir:     /fb
ESC[31;01mACCESS DENIEDESC[0m  rmdir:     /for_find
FAILED at test 3
<snip>
lib/findbin..........FAILED at test 1
<snip>
Executable pod/pod2man not found.
  /var/tmp/portage/perl-5.6.1-r7/image//usr/share/man/man1/perlmacos.1
<snip>
  /var/tmp/portage/perl-5.6.1-r7/image//usr/share/man/man1/perldebug.1
make[1]: *** [install.man] Error 2
make[1]: Leaving directory `/var/tmp/portage/perl-5.6.1-r7/work/perl-5.6.1'
make: *** [install] Error 2

!!! ERROR: The ebuild did not complete successfully.
!!! Function src_install, Line -171, Exitcode 2
!!! Unable to make install

^G^G^GESC[31;01m--------------------------- ACCESS VIOLATION SUMMARY
---------------------------ESC[0m
ESC[31;01mLOG FILE = "/tmp/sandbox-perl-5.6.1-r7-18183.log"ESC[0m

mkdir:     /for_find
rmdir:     /fa/faa
rmdir:     /fa/fab/faba
rmdir:     /fa/fab
rmdir:     /fa
rmdir:     /fb/fba
rmdir:     /fb
rmdir:     /for_find
ESC[31;01m--------------------------------------------------------------------------------ESC[0m
 ...done!
>>> emerge sys-devel/perl-5.6.1-r7 to /
>>> md5 ;-) perl-5.6.1.tar.gz
Comment 1 Seemant Kulleen (RETIRED) gentoo-dev 2002-10-18 14:44:55 UTC
did you mount -o bind /proc /mnt/gentoo/proc -t proc
before you chrooted into the gentoo partition?
Comment 2 Jeroen Stamps 2002-10-19 04:47:15 UTC
Not exactly, I followed the gentoo.org installation document, and that states
the following (point 9.1)

"mount -o bind /proc /mnt/gentoo/proc"

WITHOUT the "-t proc" addition, I'll immediately try it with that addition !

Jeroen
Comment 3 Jeroen Stamps 2002-10-19 11:46:53 UTC
But, alas, that did not help :-(
The errors remain (the same, by the way).

what I find strange is that a script pod2man.PL exists in the perl-tarball,
which, according to the script itself, should be able to be executed after
building the PERL package, so the build of PERL itself would have to have
succeeded then? Could this be something simple as writing the wrong path to
pod2man or something ? (i.e. 
 "pod/pod2man")

If you require further info, please ask!

Jeroen
Comment 4 Michael Cummings (RETIRED) gentoo-dev 2002-10-31 16:53:06 UTC
This looks like it could be a lot of things, none of them perl specific. How is
disk space on this drive? I know the answer to this, but just to be safe, were
you doing this as root? Is it possible /proc is being mounted correctly (yeah,
saw the posts about how to mount it, but when you do mount it, is there anything
there? what are the permissions like?). A few shots in the dark at least.
Comment 5 SpanKY gentoo-dev 2002-11-04 08:55:37 UTC
*** Bug 10169 has been marked as a duplicate of this bug. ***
Comment 6 SpanKY gentoo-dev 2002-11-05 12:28:20 UTC
*** Bug 466 has been marked as a duplicate of this bug. ***
Comment 7 Michael Cummings (RETIRED) gentoo-dev 2002-11-20 06:01:11 UTC
*** Bug 10975 has been marked as a duplicate of this bug. ***
Comment 8 Jeroen Stamps 2002-11-20 11:58:35 UTC
I am sorry, but the next two months I won't be able to comment further on this
matter, since I am going to relocate (I think is the right word in English;
buying a new house, and living there ?). After that, and when my internet
connection is back online, I will check it out again...

See you later, Jeroen
Comment 9 Sven Blumenstein (RETIRED) gentoo-dev 2002-11-21 16:59:47 UTC
Hi!  
  
I worked out a hack to fix this problem (look Bug 10975 for my error):  
(Its really a hack so dont do it either you dont know any other way)  
  
Comment the following lines in the  
/usr/portage/sys-devel/perl/perl-5.6.1-r7.ebuild:  
----------------------------------------  
src_install() {  
  
    export PARCH=`grep myarchname config.sh | cut -f2 -d"'"`  
  
        insinto /usr/lib/perl5/${PV}/${PARCH}/CORE/  
        doins ${WORKDIR}/libperl.so  
        dosym /usr/lib/perl5/${PV}/${PARCH}/CORE/libperl.so  
/usr/lib/libperl.so  
  
  
#    make -f Makefile \  
#               INSTALLMAN1DIR=${D}/usr/share/man/man1 \  
#               INSTALLMAN3DIR=${D}/usr/share/man/man3 \  
#               install || die  
  
#       make \  
#               DESTDIR=${D} \  
#               INSTALLMAN1DIR=${D}/usr/share/man/man1 \  
#               INSTALLMAN3DIR=${D}/usr/share/man/man3 \  
#               install || die "Unable to make install"  
#    install -m 755 utils/pl2pm ${D}/usr/bin/pl2pm  
  
  
        #man pages  
  
#       ./perl installman \  
#               --man1dir=${D}/usr/share/man/man1 \  
#               --man1ext=1 \  
#               --man3dir=${D}/usr/share/man/man3 \  
#               --man3ext=3  
  
        # This removes ${D} from Config.pm  
  
        dosed /usr/lib/perl5/${PV}/${CHOST%%-*}-linux/Config.pm  
        dosed /usr/lib/perl5/${PV}/${CHOST%%-*}-linux/.packlist  
  
        # DOCUMENTATION  
  
#   dodoc Changes* Artistic Copying README Todo* AUTHORS  
#    prepalldocs  
  
        # HTML Documentation  
  
#       dodir /usr/share/doc/${PF}/html  
#    ./perl installhtml --recurse --htmldir=${D}/usr/share/doc/${PF}/html  
  
}  
  
----------------------------------------  
  
Now emerge Perl... after it says "emerged Perl" hit CTRL+C... it looked like  
it wants to unmerge gcc here on my box :)  
Now do the following steps:  
  
# cd /var/tmp/portage/perl-5.6.1-r7/image/  
# cp -avi usr/ /  
  
If it wants to overwrite some perl libs say "yes".  
  
Last steps:  
 
# cd /usr/bin/ 
# ln -s perl5.6.1 perl 
# cd /var/tmp/portage/perl-5.6.1-r7/work/perl-5.6.1/lib 
# cp -avi * /usr/lib/perl5/5.6.1/i686-linux/ 
 
And you are done... Perl should work now as normal ;)  
  
As I said, this is a absolute hack! It worked on my system and this does not  
mean it will work for you! But its worth a try though :/  
  
 
Comment 10 Michael Cummings (RETIRED) gentoo-dev 2002-11-22 06:37:00 UTC
It just doesn't make sense though :)

If the pod generation is failing, there has to be some other underlying problem 
here. If you follow bazik's recommendation (which of course you are free to) 
you will have perl installed minus any and all documentation.

Those errors still look like nagging problems with the file system itself 
(permissions, space, something along those lines...). Anyone else that is 
watching this bug have the same problems that can verify that the filesystem 
itself is ok? 
Comment 11 Sven Blumenstein (RETIRED) gentoo-dev 2002-11-22 08:07:20 UTC
Better dont try what I posted because it gives some errors at later packages
(findutils, gawk etc...) :)
(btw, who needs documentation? I have internet access ;) )

As for your question:

As I said, I repartioned the complete harddisk of this machine (PC #1), and I am
100% sure that there is nothing wrong with them. 
I had the same and exactly the same problem on my other machine (PC #2). Here is
the technical data of the two machines:

PC #1:
Pentium 4 2000MHz, 512mb RDRAM, 4x 60 GB IBM IC350L060 ATA100 running in one
Raid0 (stripping) of 240 GB, ReiserFS 3.6 

PC #2: 
Athlon 800MHz, 1536mb SDRAM, 1x 30 GB IBM 307030 ATA100, 1x 20 GB IBM 307020
ATA100, both ReiserFS 3.6 (/home was on the 20 GB, the rest on the 30 GB).

As for the Athlon I cant post my USE or optimization flags because this machine
is in the computer heaven right now :) 
But here are my flags for the Pentium 4:

CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer -mfpmath=sse
-malign-double -mmmx -msse -msse2 -mno-3dnow" 

USE="-3dfx -3dnow -aalib -acl -afs alsa apm -arts -atlas avi -berkdb -bonobo
-canna cdr -cjk crypt cups dga directfb -doc dvd encode esd -evo fbcon -flash
-freewnn gb -gd -gdbm -ggi -ggz gif gnome -gphoto2 gpm gtk gtk2 gtkhtml -guile
-icc -icc-pgo -imap -imlib -innodb -ipv6 java jikes jpeg -junit -kde -kerberos
-lcms -ldap -leim -libg++ -libgda -libwww -matrox -maildir -mbox -mikmod mmx
-motif -mozilla mpeg -mule -mysql -nas ncurses -nls nocardbus -oci8 -odbc
oggvorbis opengl -oss -pam -pcmcia -pda pdflib -perl -pic -plotutils png -pnp
-postgres -python -qt -qtmt quicktime readline -ruby samba -sasl -scanner sdl
-slang -slp -snmp -socks5 -spell sse ssl -static svga -tcltk -tcpd -tetex tiff
truetype -trusted -voodoo3 -wavelan wmf X xface -xml -xml2 xmms xv -zeo zlib"

:D

What I just notice is, that I havent tried to compile without CFLAGS yet... I'll
try this when I am back at home (wasting work time right now).

To keep it short, the common things between my both machines where it borked are:

- IBM Harddisks (doubt thats the problem ;) )
- ReiserFS filesystem
- GCC Flags -mmmx and -fomit-frame-pointer on both machines

And now which makes this common stuff above useless is that I compiled
everything fine on my Compaq M300 Laptop with 333MHz Celeron, 128 MB SDRAM and a
14 GB Toshiba Harddisk. It uses ReiserFS 3.6 aswell and the CFLAGS contain -mmmx
and -fomit-frame-pointer too.

I also tried to install Perl 5.8.0 but it b0rks too with a "write permission
denied" error :/
If you need any further Info, please let me know! IMHO this is a critical bug
because it prevents some users from installing the system at all :(

regardsm
bazik
Comment 12 Sven Blumenstein (RETIRED) gentoo-dev 2002-11-22 08:10:13 UTC
Oh and I didnt change anything with the permissions during install (on nothing),
just straight followed the install docs. As for the free disk space:
On PC #1, I have around 239 GB free ( :D ), PC #2 had about 29 GB free... that
should be enough, eh? ;)
Comment 13 Sven Blumenstein (RETIRED) gentoo-dev 2002-11-22 08:11:48 UTC
Forgot one thing to mention: I only used the Stage1 tarballs and IIRC the
problem on the Athlon was with Gentoo 1.2. On the Pentium its 1.4rc1. 

Sorry for the SPAM, is there a way to edit bug comments?
Comment 14 Sven Blumenstein (RETIRED) gentoo-dev 2002-11-22 16:47:51 UTC
Hi again!

I just tried to compile Perl again on a fresh install (repartioned again... :) ).
After the bootstrap was done, I emerged "groff" (the dependencie of perl) and
then edited the CFLAGS in my make.conf from

CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer -mfpmath=sse
-malign-double -mmmx -msse -msse2 -mno-3dnow"

to

CFLAGS="-march=pentium4 -O3 -pipe"

I did "emerge perl", prayed and waited.... and it works!

So my guess is that one of the CFLAGS I left out borks the Perl build on some
systems... the others who get this error should try to modify there CFLAGS as
well and report if it works... 
Comment 15 Michael Cummings (RETIRED) gentoo-dev 2002-11-22 21:28:56 UTC
I notice in your original use flags that you had -gdbm - perl requires either
gdbm or berkdb to compile. I know, you have berkdb still enabled, but just to be
safe I've modified the ebuild for perl tonight to die early if neither are
installed. Honestly, those are the only two use flags (aside from having gcc
installed) that would make any kind of difference.
Comment 16 Sven Blumenstein (RETIRED) gentoo-dev 2002-11-24 12:46:22 UTC
Michael,

yep, you are right!

I changed my USE flags from

"[...] -berkdb -perl [...]"

to

"[...] berkdb perl [...]"

And it worked straight after the first try!

IMHO this bug can be seen as fixed now ;)
Comment 17 Sven Blumenstein (RETIRED) gentoo-dev 2002-11-24 12:47:48 UTC
P.S.: BTW, it worked with "-gdbm" in USE...
Comment 18 Michael Cummings (RETIRED) gentoo-dev 2002-11-26 08:47:46 UTC
r8 has been updated - db is now a req. The problem is that perl detects the 
presense of the library itslef (exclusive of the use flags), but the ebuild 
tries to disable that support if your use flag is no. To be honest, db support, 
though not *necessary*, is what helps the dynaloader work among other things. 
If the new version of r8 works for all (soon to hit a mirror near you...some 
time after I commit, some time before you probably read this) let me know. 
Since db is part of your base system, it is there by default anyway.
Comment 19 Michael Cummings (RETIRED) gentoo-dev 2002-11-27 19:48:57 UTC
Is anyone else on the CC list still having problems, or can this be closed out?
Comment 20 Felipe Ghellar 2002-12-13 09:54:34 UTC
I've just come across this "You must have either gdbm or berkdb installed and in
your use flags." case while emerging perl-5.6.1-r9. I don't understand why the
build has to fail if I don't have any of those use flags. The way I see it (and
that might well be wrong), if perl *needs* either db or gdbm, they do not
qualify as "optional support".

Considering that db is already a requirement and part of the base system, I'd
say it'd be better to assume berkdb as a default when neither gdbm nor berkdb
are included in the use variable.