Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 421247 - app-portage/g-cpan-0.16.4 is broken after perl upgrade to 5.16.0
Summary: app-portage/g-cpan-0.16.4 is broken after perl upgrade to 5.16.0
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
: 423543 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-06-15 15:19 UTC by Juergen Rose
Modified: 2012-07-04 05:21 UTC (History)
4 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 Juergen Rose 2012-06-15 15:19:50 UTC
g-cpan fails with:

root@moose:/root(57)# g-cpan -u
Can't locate Shell.pm in @INC (@INC contains: /root/Txt/Perl /etc/perl /usr/local/lib64/perl5/5.16.0/x86_64-linux-thread-multi /usr/local/lib64/perl5/5.16.0 /usr/lib64/perl5/vendor_perl/5.16.0/x86_64-linux-thread-multi /usr/lib64/perl5/vendor_perl/5.16.0 /usr/lib64/perl5/5.16.0/x86_64-linux-thread-multi /usr/lib64/perl5/5.16.0 /root) at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo/CPAN.pm line 14.
BEGIN failed--compilation aborted at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo/CPAN.pm line 14.
Compilation failed in require at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo.pm line 13.
BEGIN failed--compilation aborted at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo.pm line 13.
Compilation failed in require at /usr/bin/g-cpan line 81.
BEGIN failed--compilation aborted at /usr/bin/g-cpan line 81.
root@moose:/root(58)# emerge -pvD g-cpan

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] app-portage/g-cpan-0.16.4  0 kB


root@moose:/root(60)# qlist -Iv dev-lang/perl
dev-lang/perl-5.16.0


I did already 'perl-cleaner --all' (I have x86_64 system):

root@moose:/root(62)# perl-cleaner --all | grep -v "/usr/lib32/perl5/5.12.4"

 * Beginning a clean up of .ph files
 * Excluding files for 5.16.0 and 5.16.0/x86_64-linux-thread-multi from cleaning

 * Locating ph files for removal

 * Updating ph files.
 * Ignore all "No such file..." messages!
Can't open machine/ansi.h: No such file or directory
Can't open sys/_types.h: No such file or directory

 * Locating packages for an update
 * Locating ebuilds linked against libperl
 * No package needs to be reinstalled.

 * Finding left over modules and header

 * The following files remain. These were either installed by hand
 * or edited. This script cannot deal with them.

root@moose:/root(63)# uname -a
Linux moose 3.4.0-gentoo #1 SMP Tue May 22 15:56:07 CEST 2012 x86_64 Intel(R) Core(TM)2 Quad CPU Q9650 @ 3.00GHz GenuineIntel GNU/Linux




Also reemerging g-cpan does not help:

root@moose:/root(64)# emerge -C g-cpan;    emerge -uvND g-cpan
...
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild  N     ] app-portage/g-cpan-0.16.4  0 kB
...
>>> No outdated packages were found on your system.
 * GNU info directory index is up-to-date.

root@moose:/root(65)# g-cpan -u
Can't locate Shell.pm in @INC (@INC contains: /root/Txt/Perl /etc/perl /usr/local/lib64/perl5/5.16.0/x86_64-linux-thread-multi /usr/local/lib64/perl5/5.16.0 /usr/lib64/perl5/vendor_perl/5.16.0/x86_64-linux-thread-multi /usr/lib64/perl5/vendor_perl/5.16.0 /usr/lib64/perl5/5.16.0/x86_64-linux-thread-multi /usr/lib64/perl5/5.16.0 /root) at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo/CPAN.pm line 14.
BEGIN failed--compilation aborted at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo/CPAN.pm line 14.
Compilation failed in require at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo.pm line 13.
BEGIN failed--compilation aborted at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo.pm line 13.
Compilation failed in require at /usr/bin/g-cpan line 81.
BEGIN failed--compilation aborted at /usr/bin/g-cpan line 81.
Comment 1 Juergen Rose 2012-06-15 15:20:13 UTC
root@moose:/root(66)# emerge --info
Portage 2.1.10.65 (default/linux/amd64/10.0/desktop, gcc-4.6.3, glibc-2.15-r2, 3.4.0-gentoo x86_64)
=================================================================
System uname: Linux-3.4.0-gentoo-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q9650_@_3.00GHz-with-gentoo-2.1
Timestamp of tree: Fri, 15 Jun 2012 09:00:01 +0000
app-shells/bash:          4.2_p29
dev-java/java-config:     2.1.12
dev-lang/python:          2.7.3-r2, 3.2.3-r1
dev-util/cmake:           2.8.8-r3
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1-r1
sys-apps/openrc:          0.10.3
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.5, 1.12.1
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.5.3-r2, 4.6.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.4 (virtual/os-headers)
sys-libs/glibc:           2.15-r2
Repositories: gentoo x11 arcon bicatali sage-on-gentoo science lisp sunrise java-overlay ibormuth x-portage x-cpan g-octave
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA PUEL dlj-1.1 skype-eula googleearth AdobeFlash-10.3 cadsoft Oracle-BCLA-JavaSE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles news parallel-fetch parse-eapi-ebuild-head protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch xattr"
FFLAGS="-march=native -O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LC_ALL="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de fr"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/x11 /var/lib/layman/arcon /var/lib/layman/bicatali /var/lib/layman/sage-on-gentoo /var/lib/layman/science /var/lib/layman/lisp /var/lib/layman/sunrise /var/lib/layman/java-overlay /var/lib/layman/ibormuth /usr/local/portage /var/lib/cpan /var/lib/g-octave"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="64bit R X Xaw3d a52 aac acl acpi admin afs alsa amd64 ao apache2 applet archive arpack asf aspell assistant atlas audacious audiofile automap automount bash-completion berkdb blas blast bluetooth bluray boo boost branding bzip2 cairo cdda cddb cdf cdio cdparanoia cdr cg cgi chm cli consolekit corba cracklib crypt css cuda cups curl cxx daap db dbase dbi dbm dbus declarative designer devhelp device-mapper dga dia dirac djvu doc dri ds2490 ds9097 ds9097u dts dv dvb dvd dvdr dvi dynamicplugin eds egl elf emacs emboss emf encode epiphany evo examples exif expat extensions extra extras faac faad fam ffmpeg fftw firefox fits flac fltk fontconfig foomaticdb fortran fortran95 fpx fts3 fuse g3dvl galago garmin gcj gd gdal gdbm gdu gedit geoip geolocation geos gfortran gif gimp ginac git glade glib glpk gml gmp gmtsuppl gnome gnome-keyring gnome-print gnuplot gnutls gphoto2 gpm grammar graphics graphtft graphviz grass gs gsl gsm gstreamer gtk gtk3 gudev guile harness hddtemp hdf hdf5 hdri http httpd hvm hwdb iconv icq icu id3 ide imagemagick imap innodb inotify ipod ipv6 irda ithreads jabber jadetex java java6 jbig john jpeg jpeg2k kate kdepim kdrive kerberos kpathsea kqemu kvm ladspa lame lapack latex latex3 lcms ldap lensfun libffi libgda libnotify libsamplerate lirc live lm_sensors lua lzo mad mail maildir mapnik math matroska media-library mkl mmx mmxext mng modules mono motif mozilla mp3 mp4 mpeg mpi mplayer mtp mudflap multilib musepack musicbrainz mysql mysqli nautilus ncurses neXt netcdf netpbm network networking networkmanager nfs nls nntp nptl nsplugin ntfs ntp numpy nvidia obex objc ocaml ocr octave odbc ogdi ogg ole openexr opengl openmp overview pae pam pango pcre pda pdf perl plotutils plugins png podcast policykit portaudio posix postgres postscript ppds pppd preview-latex proj projectm projectx pstricks pulseaudio python python-bindings q16 q32 qemu qhull qt3support qt4 quicktime readline reiserfs reports rle romio rpc rrdcgi rrdtool sage samba sasl schroedinger science sdk sdl secure-delete semantic-desktop server session shout sip slang slp smbclient smp sms sndfile snmp soup sox speex spell sql sqlite sse sse2 sse4 ssl ssse3 startup-notification stlport subtitles subversion suexec svg svm swig sysfs szip t1lib tcl tcpd tex tex4ht texmacs tgif theora thesaurus threads thunderbird tidy tiff tk tools truetype udev udisks unicode upower usb userlocales utempter vaapi video virtualbox visio vorbis wav webdav webdav-serf webkit wifi wmf wxwidgets x264 xa xattr xcb xemacs xetex xext xft xine xml xmlreader xmlrpc xorg xpm xulrunner xv xvid xvmc yaml zlib zvbi" ALSA_CARDS="intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="canon fuji" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CURL_SSL="nss" DRACUT_MODULES="caps lvm mdraid syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de fr" NETBEANS_MODULES="apisupport cnd dlight enterprise ergonomics groovy gsf harness ide identity j2ee java mobility nb php profiler ruby websvccommon xml" PHP_TARGETS="php5-3" PYTHON_TARGETS="python3_2 python2_7" QEMU_SOFTMMU_TARGETS="arm i386 x86_64" QEMU_USER_TARGETS="arm i386 x86_64" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="nv nouveau vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 2 Paul Hartman 2012-06-16 04:17:50 UTC
Same here. I don't know Perl, but I was able to workaround by editing /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo/CPAN.pm and changing the line:

use Shell qw(perl);

to

use CPAN::Shell qw(perl);

still gives some warnings when run, but seems to be working.
Comment 3 Juergen Rose 2012-06-16 15:43:42 UTC
If I follow Paul, I get:

root@impala:/root(7)# g-cpan -u
Use of qw(...) as parentheses is deprecated at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo/CPAN.pm line 325.
Use of qw(...) as parentheses is deprecated at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo/CPAN.pm line 387.
Use of qw(...) as parentheses is deprecated at /usr/bin/g-cpan line 716.
 * OVERLAY: /var/lib/layman/x11/perl-gcpan
 * Couldn't open folder /var/lib/layman/x11/perl-gcpan: No such file or directory
...
 * OVERLAY: /var/lib/cpan/perl-gcpan
 * OVERLAY: /var/lib/cpan/perl-gcpan
 * OVERLAY: /var/lib/g-octave/perl-gcpan
 * Couldn't open folder /var/lib/g-octave/perl-gcpan: No such file or directory
-CPAN: Storable loaded ok (v2.35)
CPAN: LWP::UserAgent loaded ok (v6.04)
CPAN: Time::HiRes loaded ok (v1.9725)
Fetching with LWP:
http://search.cpan.org/CPAN/authors/01mailrc.txt.gz
...
http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/CHECKSUMS
Checksum for /tmp/.cpan/sources/authors/id/A/AD/ADAMK/PPI-PowerToys-0.14.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.88)
...
CPAN: Module::CoreList loaded ok (v2.66)
Undefined subroutine &Gentoo::CPAN::perl called at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo/CPAN.pm line 200.


Nothing is installed. If I try to install Cv-0.12 with g-cpan, it fails too:

c++ -c  -I. -I.. -I../lib/Cv -I/var/tmp/portage/perl-gcpan/Cv-0.12/work/Cv-0.12/lib/Cv -I/usr/include -march=amdfam10 -O2 -pipe   -DVERSION=\"\" -DXS_VERSION=\"\" -fPIC "-I/usr/lib64/perl5/5.16.0/x86_64-linux-thread-multi/CORE"   pack-CvMSERParams.c
Can't locate object method "xstype" via package "CvErrorCallback" (perhaps you forgot to load "CvErrorCallback"?) at /usr/lib64/perl5/vendor_perl/5.16.0/ExtUtils/ParseXS.pm line 1837, <GEN3> line 2196.
make: *** [Cv.c] Error 29


I don't know, whether this is a Cv or a g-cpan error. I will file a seperate bug for the last issue.
Comment 4 Vladimir Smirnov (RETIRED) gentoo-dev 2012-06-16 23:22:01 UTC
With #2 workaround g-cpan works.

Warnings can be easily fixed: just put parentness around: http://search.cpan.org/~jesse/perl-5.14.0/pod/perldelta.pod#Use_of_qw(...)_as_parentheses

Next problem is "undefined subroutine &Gentoo::CPAN::perl called at /usr/lib64/perl5/vendor_perl/5.16.0/Gentoo/CPAN.pm line 200".

It seems that changing "perl("Makefile.PL",'</dev/null')" to "system("perl Makefile.PL </dev/null"); is sufficient workaround.
Comment 5 Diego Elio Pettenò (RETIRED) gentoo-dev 2012-06-17 12:51:25 UTC
Patched in 0.16.4-r1.
Comment 6 Paul McDermott 2012-07-03 20:49:22 UTC
*** Bug 423543 has been marked as a duplicate of this bug. ***