The Perl-Spec ebuild (this concerns at least versions 0.84 and 0.87) fails with the following error message: Can't locate Module/Build.pm in @INC (@INC contains: /etc/perl /usr/lib/perl5/si te_perl/5.8.5/i686-linux /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.5/i686-linux /usr/lib/perl5/vendor_perl/5.8.5 /u sr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.5/i686-linux /usr/lib/perl5/5.8.5 /usr/local/lib/site_perl .). BEGIN failed--compilation aborted. Can't locate Module/Build.pm in @INC (@INC contains: /etc/perl /usr/lib/perl5/si te_perl/5.8.5/i686-linux /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.5/i686-linux /usr/lib/perl5/vendor_perl/5.8.5 /u sr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.5/i686-linux /usr/lib/perl5/5.8.5 /usr/local/lib/site_perl .). BEGIN failed--compilation aborted. * * Please post a bug on http://bugs.gentoo.org assigned to * perl@gentoo.org - File-Spec-0.84 was added without a dependancy * on dev-perl/module-build * * Reproducible: Always Steps to Reproduce: 1. emerge dev-perl/File-Spec 2. 3. Actual Results: Can't locate Module/Build.pm in @INC (@INC contains: /etc/perl /usr/lib/perl5/si te_perl/5.8.5/i686-linux /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.5/i686-linux /usr/lib/perl5/vendor_perl/5.8.5 /u sr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.5/i686-linux /usr/lib/perl5/5.8.5 /usr/local/lib/site_perl .). BEGIN failed--compilation aborted. Can't locate Module/Build.pm in @INC (@INC contains: /etc/perl /usr/lib/perl5/si te_perl/5.8.5/i686-linux /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.5/i686-linux /usr/lib/perl5/vendor_perl/5.8.5 /u sr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.5/i686-linux /usr/lib/perl5/5.8.5 /usr/local/lib/site_perl .). BEGIN failed--compilation aborted. * * Please post a bug on http://bugs.gentoo.org assigned to * perl@gentoo.org - File-Spec-0.84 was added without a dependancy * on dev-perl/module-build * * Expected Results: I was expecting a successful merge. Portage 2.0.51.19 (default-linux/x86/2004.3, gcc-3.3.5, glibc-2.3.4.20040808-r1, 2.6.11.3 i686) ================================================================= System uname: 2.6.11.3 i686 Intel(R) Pentium(R) 4 CPU 2.53GHz Gentoo Base System version 1.4.16 Python: dev-lang/python-2.3.4-r1 [2.3.4 (#1, Feb 8 2005, 09:55:14)] distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.3 [enabled] dev-lang/python: 2.3.4-r1 sys-devel/autoconf: 2.59-r6, 2.13 sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.4 sys-devel/binutils: 2.15.92.0.2-r1 sys-devel/libtool: 1.5.10-r4 virtual/os-headers: 2.6.8.1-r4 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -Os -pipe -fno-thread-jumps -fgcse -frerun-cse-a fter-loop -fforce-mem -fstrict-aliasing -maccumulate-outgoing-args -mno-align-stringops -fomit-frame-pointer -fno-trapping-math" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X1 1/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/ config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/init.d /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium3 -Os -pipe -fno-thread-jumps -fgcse -frerun-cse -after-loop -fforce-mem -fstrict-aliasing -maccumulate-outgoing-args -mno-align-stringops -fomit-frame-pointer -fno-trapping-math" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distcc distlocks sandbox sfperms userpriv usersandbox" GENTOO_MIRRORS="ftp://ftp.sunet.se/pub/Linux/distributions/gentoo http://gentoo. oregonstate.edu ftp://distro.ibiblio.org/pub/linux/distributions/gentoo http://distro.ibiblio.org/pub/linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/local/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X Xaw3d aalib acl acpi alsa amd apache2 apm avi bash-completion berkdb cddb cdparanoia cdr crypt cscope cups curl dga directfb divx4linux doc dvb dvd dvdr encode esd ethereal evo fbcon flash foomaticdb gb gd gdbm ggi gimp gimpprint gno me gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile imap imlib ipv6 jack java jikes joystick jpeg junit kerberos lcms ldap libclamav libg++ libgda libwww live mad m aildir mbox mcal memlimit mikmod motif mozilla mpeg mpi nas ncurses network nls nntp nocardbus nocd nptl odbc offensive oggvorbis opengl oss pam pda pdflib perl pie plotutils png python quicktime readline rtc ruby samba scanner sdl slang sl p snmp spell sse ssl svga tcltk tcpd theora tiff truetype usb v4l v4l2 videos wm f wxwindows x86 xface xinerama xml xml2 xmms xosd xv xvid zeo zlib video_cards_i810" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS
And people said my new eclass was all hogwash with its checking for module-build :) OK, so no one ever said that and I never got comments on the proposed changed last month, so I posted them yesterday. This should be hitting the mirrors in a moment or two, plus replication time, yada yada, emerge sync about an hour after you get this email and you should be all set. Or, if you can't wait to portably handle your files and directories, go ahead and emerge dev-perl/module-build File-Spec and you will be all set (same affect, just adding the dep to the ebuild). And all levity aside, thank you for actually taking the time to post the bug. Happy merging, -Mike
Actually, I had a problem with this change--but with a different package (dev-perl/ExtUtils-CBuilder). It's basically a "chicken and egg" thing. To install dev-perl/module-build it depends indirectly on dev-perl/ExtUtils-CBuilder, which of course depends on dev-perl/module-build. I got it to install by doing `emerge --nodeps dev-perl/module-build && emerge dev-perl/module-build`...
I can confirm this. The module-build package now shows as a dependency, but the command fails on ExtUtils-CBuilder instead. -----8<----- These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild N ] dev-perl/FileHandle-Unget-0.11 0 kB [ebuild N ] dev-perl/Mail-Mbox-MessageParser-1.20 0 kB [ebuild N ] dev-perl/TimeDate-1.16 0 kB [ebuild N ] dev-perl/module-info-0.20 0 kB [ebuild N ] dev-perl/ExtUtils-CBuilder-0.05 0 kB [ebuild N ] dev-perl/extutils-parsexs-2.08 21 kB [ebuild N ] dev-perl/yaml-0.35 54 kB [ebuild N ] dev-perl/Compress-Zlib-1.33 111 kB [ebuild N ] dev-perl/IO-Zlib-1.01 4 kB [ebuild N ] dev-perl/IO-String-1.03 6 kB [ebuild N ] dev-perl/Archive-Tar-1.23-r1 31 kB [ebuild N ] dev-perl/module-build-0.25 102 kB [ebuild N ] dev-perl/File-Spec-0.84-r1 0 kB ----->8----- -----8<----- * * Please post a bug on http://bugs.gentoo.org assigned to * perl@gentoo.org - ExtUtils-CBuilder-0.05 was added without a dependancy * on dev-perl/module-build * * ----->8-----
Just so you know, I'm not asleep at the helm, will get to this in one sec.
OK, here's the skinney, working through solutions. * ExtUtils-CBuilder needs ExtUtils-ParseXS. * Module-Build *can* use ExtUtils-ParseXS (and I had it as a dep in the spirit of flavor richness). * But ExtUtils-ParseXS now ships with an optional Build.PL if you want to use that - and the new eclass does a sanity check to see if there is a Build.PL and complains about module-build if it isn't a dep, 'cause why have a Build.PL if you aren't going to use it correctly
OK, please emerge sync one last time. I've removed the dependancy for extutils-parsexs. It was optional to begin with, and it is the reason this loop is being generated. I can revisit this later when things die down to look for bootstrapping approaches, but it should resolve this issue. Please let me know in an hour or so once this has hit the mirrors if you still have problems. In the meantime, you can remove the DEPEND on extutils-parsexs from your local ebuilds if this is holding you up.
Works for me, thanks muchly.
OK, by now everyone's trees should have the correct ebuilds (given you've emerge synced since this bug was opened ;) ). Closing out, Mike