Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 344897 - app-portage/g-cpan-0.16.2 doesn't want to install CPAN Switch
Summary: app-portage/g-cpan-0.16.2 doesn't want to install CPAN Switch
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Robin Johnson
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-11-10 08:03 UTC by Sven Eden
Modified: 2011-01-26 20:05 UTC (History)
2 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 Sven Eden 2010-11-10 08:03:46 UTC
With perl-5.12 the Switch Module produces the following message upon usage:

"Switch will be removed from the Perl core distribution in the next major release. Please install it from CPAN."

So I tried to install it via g-cpan, but it produces the following output:

====================================
 # g-cpan -i Switch
-Sorry, we have to rerun the configuration dialog for CPAN.pm due to
some missing parameters...  Will write to
 <</root/.cpan/CPAN/MyConfig.pm>>

Normally CPAN.pm keeps config variables in memory and changes need to
be saved in a separate 'o conf commit' command to make them permanent
between sessions. If you set the 'auto_commit' option to true, changes
to a config variable are always automatically committed to disk.

 <auto_commit>
Always commit changes to config variables to disk? [no] no


Please remember to call 'o conf commit' to make the config permanent!
Going to read '/var/tmp/g-cpan/.cpan/Metadata'
  Database was generated on Wed, 10 Nov 2010 07:30:59 GMT
|Checksum for /var/tmp/g-cpan/.cpan/sources/authors/id/R/RG/RGARCIA/Switch-2.16.tar.gz ok
 * Filter::Util::Call is part of the core perl install
 * Text::Balanced is part of the core perl install
 * Nothing to install!!
====================================

Reproducible: Always

Steps to Reproduce:
1. Try to install Switch with g-cpan

Actual Results:  
Message: "Nothing to install!!"

Expected Results:  
Generate an ebuild in dev-gcpan/Switch and install Switch

I haven't have it installed by accident. Emerge, g-cpan and eix do not show this Module as being neither installed nor present.
Comment 1 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2011-01-23 21:50:28 UTC
I cannot reproduce this.
====
-CPAN: Storable loaded ok (v2.25)
Going to read '/var/tmp/g-cpan/.cpan/Metadata'
  Database was generated on Sun, 23 Jan 2011 18:40:06 GMT
|CPAN: Digest::SHA loaded ok (v5.50)
CPAN: Compress::Zlib loaded ok (v2.033)
Checksum for /var/tmp/g-cpan/.cpan/sources/authors/id/R/RG/RGARCIA/Switch-2.16.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.76)
Switch-2.16/
Switch-2.16/t/
Switch-2.16/t/given.t
Switch-2.16/t/switch.t
Switch-2.16/t/nested.t
Switch-2.16/MANIFEST
Switch-2.16/META.yml
Switch-2.16/Changes
Switch-2.16/Switch.pm
Switch-2.16/README
Switch-2.16/Makefile.PL
CPAN: File::Temp loaded ok (v0.22)
CPAN: Parse::CPAN::Meta loaded ok (v1.40)
 * Filter::Util::Call is part of the core perl install
 * Text::Balanced is part of the core perl install
 * Generating ebuild for Switch
 * Ebuild generated for Switch
>>> Creating Manifest for /usr/local/portage/dev-perl/Switch
====

Please trace it more and provide instructions to reproduce.
Comment 2 Sven Eden 2011-01-24 18:51:19 UTC
Well, I can reproduce at will, and the output looks different for me. After stating that the checksum for the archive is okay, there are two messages stating that Filter::Util::Call and Text::Balanced are part of the core package. And I have messages prior the statement which database is going to be read. The message "-CPAN: Storable loaded ok (v2.25)" from your output is news to me.

If I delete /root/.cpan/CPAN/MyConfig.pm and the Switch archive, the only difference is a first line stating that the config is generated and the archive plus checksum file to be downloaded again.


Steps to reproduce (for me) are:
1. g-cpan --install Switch
2. write a test program
3. run test program, showing deprecation warning:

--------------------------------------------------
sed-notebook /tmp # g-cpan --install Switch
-Sorry, we have to rerun the configuration dialog for CPAN.pm due to
some missing parameters...  Will write to
 <</root/.cpan/CPAN/MyConfig.pm>>

Normally CPAN.pm keeps config variables in memory and changes need to
be saved in a separate 'o conf commit' command to make them permanent
between sessions. If you set the 'auto_commit' option to true, changes
to a config variable are always automatically committed to disk.

 <auto_commit>
Always commit changes to config variables to disk? [no] no


Please remember to call 'o conf commit' to make the config permanent!
Going to read '/var/tmp/g-cpan/.cpan/Metadata'
  Database was generated on Mon, 24 Jan 2011 17:44:21 GMT
|Checksum for /var/tmp/g-cpan/.cpan/sources/authors/id/R/RG/RGARCIA/Switch-2.16.tar.gz ok
 * Filter::Util::Call is part of the core perl install
 * Text::Balanced is part of the core perl install
 * Nothing to install!!

--------------------------------------------------
sed-notebook /tmp # cat test.pl
#!/usr/bin/perl -w

use Switch;

my $test=shift || 0;

switch ($test) {
                case 0  { print "Nothing given\n"; }
                case 42 { print "the ANSWER!\n"; }
                else    { print "What's $test ?\n"; }
        }

--------------------------------------------------
sed-notebook /tmp # ./test.pl 42
Switch will be removed from the Perl core distribution in the next major release. Please install it from CPAN. It is being used at ./test.pl, line 3.
the ANSWER!

==================================================
I am very sorry, but I have absolutely no clue how I can "trace it more". I am completely at sea with that. :-(
Comment 3 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2011-01-24 19:03:37 UTC
1. Please provide the output of:
# g-cpan -g -v Switch
2. output of "emerge --info"
3. Can you ensure that you fully ran perl-cleaner
Comment 4 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2011-01-24 21:18:31 UTC
(In reply to comment #3)
> 1. Please provide the output of:
> # g-cpan -g -v Switch
> 2. output of "emerge --info"
> 3. Can you ensure that you fully ran perl-cleaner
> 

Perhaps we should just do bug 351065 and add a working ebuild for it to portage, Masked =) ?
Comment 5 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2011-01-24 21:28:07 UTC
kentfredric:
That's entirely separate to g-cpan not working for Sven.
Comment 6 Sven Eden 2011-01-24 22:12:11 UTC
(In reply to comment #3)
> 1. Please provide the output of:
> # g-cpan -g -v Switch
> 2. output of "emerge --info"
> 3. Can you ensure that you fully ran perl-cleaner
> 

(In reply to comment #3)
> 1. Please provide the output of:
> # g-cpan -g -v Switch
> 2. output of "emerge --info"
> 3. Can you ensure that you fully ran perl-cleaner
> 

Okay, thanks for the quick reply, I really appreiate that!

Now first, I found out, that the "missing configuration" message comes from /usr/lib/perl5/5.12.2/CPAN/HandleConfig.pm and a print I added to it told me, that "auto_commit" is missing from the configuration file. I added the option and now the output of g-cpan starts with:

"-CPAN: Storable loaded ok (v2.20)"

Can this be a problem? v2.20 instead of v2.25?

However, here is the output of -g -v:

sed-notebook /tmp # g-cpan -g -v Switch
 * Getting CPAN Info for Switch
-CPAN: Storable loaded ok (v2.20)
Going to read '/var/tmp/g-cpan/.cpan/Metadata'
  Database was generated on Mon, 24 Jan 2011 18:42:46 GMT
 * Scanning /usr/local/portage for Switch
 * Scanning /var/lib/layman/gamerlay for Switch
 * Scanning /var/lib/layman/lxde for Switch
 * Scanning /var/lib/layman/sunrise for Switch
 * Scanning /var/lib/layman/x11 for Switch
 * Scanning /var/lib/layman/vmware for Switch
 * Scanning /usr/portage for Switch
 * Scanning /var/lib/layman/pro-audio for Switch
|CPAN: Digest::SHA loaded ok (v5.47)
CPAN: Compress::Zlib loaded ok (v2.02401)
Checksum for /var/tmp/g-cpan/.cpan/sources/authors/id/R/RG/RGARCIA/Switch-2.16.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.54)
Switch-2.16/
Switch-2.16/t/
Switch-2.16/t/given.t
Switch-2.16/t/switch.t
Switch-2.16/t/nested.t
Switch-2.16/MANIFEST
Switch-2.16/META.yml
Switch-2.16/Changes
Switch-2.16/Switch.pm
Switch-2.16/README
Switch-2.16/Makefile.PL
CPAN: File::Temp loaded ok (v0.22)
CPAN: Parse::CPAN::Meta loaded ok (v1.40)
 * Checking on dependency Filter::Util::Call for Switch
 * Filter::Util::Call is part of the core perl install
 * Checking on dependency Text::Balanced for Switch
 * Text::Balanced is part of the core perl install
 * Cleaning temporary space


At this point I thought "wow, is it going to work now? But when I redid with -i instead of -g, the same "nothing to install" message appeared.

Before I add something as long as emerge --info, I thought, I'd like to verify on perl-cleaner. So I ran it with --reallyall and --leftovers. I noticed that there are some files listed from perl-5.8.8 and perl-5.12.1, removed those by hand and re-emerged all currently installed packages (103) shown by perl-cleaner. (I left some bigger ones out, though, and only emerged those that have "perl" in their name or category) After that I re-emerged g-cpan and tried again:
Same result: "nothing to install"

Comment 7 Sven Eden 2011-01-24 22:13:59 UTC
sed-notebook /tmp # emerge --info
Portage 2.2.0_alpha19 (default/linux/amd64/10.0/desktop/kde, gcc-4.5.1, glibc-2.11.2-r3, 2.6.37-gentoo x86_64)
=================================================================
System uname: Linux-2.6.37-gentoo-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T5670_@_1.80GHz-with-gentoo-2.0.1
Timestamp of tree: Mon, 24 Jan 2011 07:15:01 +0000
ccache version 3.1.3 [enabled]
app-shells/bash:     4.1_p9
dev-java/java-config: 2.1.11-r3
dev-lang/python:     2.6.6-r1, 3.1.2-r4
dev-util/ccache:     3.1.3
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 2.0.1-r1
sys-apps/openrc:     0.6.8
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.5.1-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.4-r1
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.36.1 (sys-kernel/linux-headers)
ABI="amd64"
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
ACCEPT_PROPERTIES="*"
ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci"
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"
ANT_HOME="/usr/share/ant"
APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias"
APACHE2_MPMS="worker"
ARCH="amd64"
ASFLAGS_x86="--32"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CCACHE_COMPRESS="1"
CCACHE_DIR="/home/.ccache"
CCACHE_SIZE="4G"
CDEFINE_amd64="__x86_64__"
CDEFINE_x86="__i386__"
CFLAGS="-march=core2 -O2 -pipe -mmmx -msse -msse2 -msse3 -mssse3 -mcx16 -msahf -mtune=core2 -mfpmath=sse -ftree-vectorize -floop-interchange -fgraphite-identity -ftree-loop-distribution -floop-strip-mine -floop-block"
CFLAGS_x86="-m32"
CG_COMPILER_EXE="/usr/bin/cgc"
CHOST="x86_64-pc-linux-gnu"
CHOST_amd64="x86_64-pc-linux-gnu"
CHOST_x86="i686-pc-linux-gnu"
CLEAN_DELAY="5"
COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog"
COLLISION_IGNORE="/lib/modules"
COLORFGBG="15;0"
CONFIG_PROTECT="/etc /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/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"
CRYSTAL_CONFIG="/etc/crystalspace-1.4"
CRYSTAL_PLUGIN="/usr/lib64/crystalspace-1.4"
CVS_RSH="ssh"
CXXFLAGS="-march=core2 -O2 -pipe -mmmx -msse -msse2 -msse3 -mssse3 -mcx16 -msahf -mtune=core2 -mfpmath=sse -ftree-vectorize -floop-interchange -fgraphite-identity -ftree-loop-distribution -floop-strip-mine -floop-block"
DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-77BOKsY7Ko,guid=5dc4fb21b29205bbb0babdee0000002e"
DEFAULT_ABI="amd64"
DESKTOP_SESSION="KDE-4"
DISPLAY=":0"
DISTDIR="/home/distfiles"
DM_CONTROL="/var/run/xdmctl"
EDITOR="/bin/nano"
ELIBC="glibc"
EMERGE_DEFAULT_OPTS="--alphabetical --verbose --keep-going --jobs --load-average=4.0"
EMERGE_WARNING_DELAY="10"
EPREFIX=""
EROOT="/"
FCFLAGS=""
FEATURES="assume-digests binpkg-logs ccache distlocks fixlafiles fixpackages metadata-transfer news parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox"
FETCHCOMMAND="/usr/bin/wget -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
FETCHCOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
FETCHCOMMAND_SFTP="bash -c "x=\${2#sftp://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec sftp -P \${port} \"\${host}:/\${x#*/}\" \"\$1\"" sftp "${DISTDIR}/${FILE}" "${URI}""
FETCHCOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}""
FFLAGS=""
FLTK_DOCDIR="/usr/share/doc/fltk-1.1.9-r1/html"
GCC_SPECS=""
GCPAN_OVERLAY=" /var/lib/layman/sunrise /var/lib/layman/pro-audio /var/lib/layman/vmware /var/lib/layman/gamerlay /var/lib/layman/x11 /var/lib/layman/lxde /usr/local/portage /g-cpan"
GDK_USE_XFT="1"
GENTOO_MIRRORS="http://de-mirror.org/distro/gentoo/ http://gentoo.supp.name/ http://gentoo.mneisen.org/ http://ftp.gentoo.bg/ http://gentoo.mirror.pw.edu.pl/"
GPG_AGENT_INFO="/tmp/gpg-5cLFPo/S.gpg-agent:3174:1"
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"
GS_LIB="/home/sed/.fonts"
GTK2_RC_FILES="/etc/gtk-2.0/gtkrc:/home/sed/.gtkrc-2.0:/home/sed/.gtkrc-2.0-kde4:/home/sed/.kde4/share/config/gtkrc-2.0"
GTK_RC_FILES="/etc/gtk/gtkrc:/home/sed/.gtkrc::/home/sed/.kde4/share/config/gtkrc"
HG="/usr/bin/hg"
HOME="/root"
INFOPATH="/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.20.1/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.1/info"
INPUT_DEVICES="keyboard mouse evdev synaptics"
JAVAC="/home/sed/.gentoo/java-config-2/current-user-vm/bin/javac"
JAVACC_HOME="/usr/share/javacc/"
JAVA_HOME="/home/sed/.gentoo/java-config-2/current-user-vm"
JDK_HOME="/home/sed/.gentoo/java-config-2/current-user-vm"
KDE_FULL_SESSION="true"
KDE_MULTIHEAD="false"
KDE_SESSION_UID="1001"
KDE_SESSION_VERSION="4"
KERNEL="linux"
KONSOLE_DBUS_SERVICE=":1.85"
KONSOLE_DBUS_SESSION="/Sessions/2"
LANG="de_DE.UTF-8@euro"
LANGUAGE="de_DE.UTF-8@euro"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text"
LC_COLLATE="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--sort-common -Wl,--hash-style=gnu"
LDFLAGS_x86="-m elf_i386"
LESS="-R -M --shift 5"
LESSOPEN="|lesspipe.sh %s"
LIBDIR_amd64="lib64"
LIBDIR_amd64_fbsd="lib64"
LIBDIR_ppc="lib32"
LIBDIR_ppc64="lib64"
LIBDIR_sparc32="lib32"
LIBDIR_sparc64="lib64"
LIBDIR_x86="lib32"
LIBDIR_x86_fbsd="lib32"
LINGUAS="de de_DE en en_US en_GB"
LOGNAME="root"
MAKEOPTS="-j5 -l4"
MANPATH="/home/sed/.gentoo/java-config-2/current-user-vm/man:/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.20.1/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.1/man:/etc/java-config/system-vm/man/:/usr/lib64/php5.3/man/"
MULTILIB_ABIS="amd64 x86"
MULTILIB_STRICT_DENY="64-bit.*shared object"
MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X11R6/lib"
MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage)"
NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml"
OLDPWD="/home/sed"
OPENGL_PROFILE="xorg-x11"
PAGER="/usr/bin/less"
PATH="/sbin:/bin:/usr/sbin:/usr/bin"
PHP_TARGETS="php5-3"
PKGDIR="/home/packages"
PORTAGE_ARCHLIST="ppc sparc64-freebsd ppc-openbsd x86-openbsd ppc64 x86-winnt x86-fbsd ppc-aix alpha arm x86-freebsd s390 amd64 arm-linux x86-macos x64-openbsd ia64-hpux hppa x86-netbsd x86-cygwin amd64-linux ia64-linux x86 sparc-solaris x64-freebsd sparc64-solaris x86-linux x64-macos sparc m68k-mint ia64 mips ppc-macos x86-interix hppa-hpux amd64-fbsd x64-solaris mips-irix m68k sh x86-solaris sparc-fbsd"
PORTAGE_BINHOST_CHUNKSIZE="3000"
PORTAGE_BIN_PATH="/usr/lib64/portage/bin"
PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png"
PORTAGE_CONFIGROOT="/"
PORTAGE_DEBUG="0"
PORTAGE_DEPCACHEDIR="/var/cache/edb/dep"
PORTAGE_ECLASS_WARNING_ENABLE="0"
PORTAGE_ELOG_CLASSES="log warn error"
PORTAGE_ELOG_MAILFROM="portage@localhost"
PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}"
PORTAGE_ELOG_MAILURI="root"
PORTAGE_ELOG_SYSTEM="save_summary echo"
PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5"
PORTAGE_FETCH_RESUME_MIN_SIZE="350K"
PORTAGE_GID="250"
PORTAGE_INST_GID="0"
PORTAGE_INST_UID="0"
PORTAGE_IONICE_COMMAND="ionice -c 3 -p ${PID}"
PORTAGE_NICENESS="19"
PORTAGE_PYM_PATH="/usr/lib64/portage/pym"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_RSYNC_RETRIES="-1"
PORTAGE_SANDBOX_COMPAT_LEVEL="22"
PORTAGE_SYNC_STALE="30"
PORTAGE_TMPDIR="/var/tmp"
PORTAGE_VERBOSE="1"
PORTAGE_WORKDIR_MODE="0700"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/sunrise /var/lib/layman/pro-audio /var/lib/layman/vmware /var/lib/layman/gamerlay /var/lib/layman/x11 /var/lib/layman/lxde /usr/local/portage"
PORT_LOGDIR="/var/log/portage"
PRELINK_PATH_MASK="/usr/lib64/libfreebl3.so:/usr/lib64/libnssdbm3.so:/usr/lib64/libsoftokn3.so"
PROFILEHOME=""
PROFILE_ONLY_VARIABLES="ARCH ELIBC KERNEL USERLAND"
PWD="/tmp"
PYTHONDOCS="/usr/share/doc/python-docs-2.6.5/html/library"
PYTHONDOCS_2_6="/usr/share/doc/python-docs-2.6.5/html/library"
PYTHONDOCS_3_1="/usr/share/doc/python-docs-3.1.2/html/library"
PYTHONDONTWRITEBYTECODE="1"
QT_PLUGIN_PATH="/home/sed/.kde4/lib64/kde4/plugins/:/usr/lib64/kde4/plugins/"
RESUMECOMMAND="/usr/bin/wget -c -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
RESUMECOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
RESUMECOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}""
ROOT="/"
ROOTPATH="/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.1:/opt/vmware/bin"
RPMDIR="/usr/portage/rpm"
RUBY_TARGETS="ruby18"
R_HOME="/usr/lib64/R"
SESSION_MANAGER="local/sed-notebook:@/tmp/.ICE-unix/3256,unix/sed-notebook:/tmp/.ICE-unix/3256"
SHELL="/bin/bash"
SHELL_SESSION_ID="eca4cf8635514000bc54836941a4e2ee"
SHLVL="3"
STAGE1_USE="multilib nptl nptlonly unicode"
STRIGI_PLUGIN_PATH="/usr/lib64/strigi:"
SYMLINK_LIB="yes"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
TERM="xterm"
TEXINPUTS="/usr/lib64/ocaml/ocamldoc:"
USE="64bit 7zip X a52 aac aalib acl acpi alsa amd64 ant apache2 async automount avahi bash-completion battery big-tables binfilter branding bzip2 c++ cairo caps cdda cdr chm cleartype cli clucene community consolekit contrib cracklib ctype cups curl cxx dbus designer designer-plugin desktopglobe dga directfb djvu dri dts dvd dvdr ebook emboss encode exceptions exif expat extraengine fam fbcon ffmpeg fftw firefox firefox3 fits flac fontconfig foomaticdb fortran fts3 fuse gallium gd gdbm gif gimp glitz gmp gnutls gpg gphoto2 gpm graphviz gs gucharmap guidexml handbook hash hddtemp i18n iconv icu id3 id3tag image imagemagick imap imlib indi ithreads jabber java java6 javascript jit jpeg jpeg2k kde kipi kpathsea lame laptop latex latex3 lcms ldap libcaca libnotify libsamplerate libwww lm_sensors lua lvm lvm1 lvm2 lzma lzo mad mdnsresponder-compat mercurial metric mikmod mmx mng modules motif mozilla mp3 mp4 mpeg mpi mudflap multilib music musicbrainz mysql mysqli ncurses net nls nova nptl nptlonly nsplugin oav odbc ogg openexr opengl openmp pam pango pch pcre pdf perl phonon php pkinit plasma pm-utils png ppds pppd private-headers profiling ps pstricks python qalculate qt3support qt4 qthelp qtscript quotas qwt rar readline samba sasl scim sdl sdl-image sdl-sound sdlaudio sdlcd semantic-desktop sensord session slp sound spell sql sse sse2 ssl startup-notification subversion svg symlink sysfs syslog taglib tcpd theora threads threadsafe thumbnail thunar tidy tiff truetype udev unicode usb virtuoso vnc vorbis wav wavpack wicd wifi wma wmf wps x264 xattr xcb xcomposite xine xinerama xinetd xml xmlpatterns xorg xpm xrandr xscreensaver xulrunner xv xvid zeroconf zip zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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 authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" APACHE2_MPMS="worker" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap 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 synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de de_DE en en_US en_GB" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="intel fbdev 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" 
USER="root"
USERLAND="GNU"
USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CAMERAS COLLECTD_PLUGINS CROSSCOMPILE_OPTS DVB_CARDS ELIBC FCDSL_CARDS FOO2ZJS_DEVICES FRITZCAPI_CARDS GPSD_PROTOCOLS INPUT_DEVICES KERNEL LCD_DEVICES LINGUAS LIRC_DEVICES MISDN_CARDS NETBEANS_MODULES NGINX_MODULES_HTTP NGINX_MODULES_MAIL PHP_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS RUBY_TARGETS SANE_BACKENDS USERLAND VIDEO_CARDS XFCE_PLUGINS XTABLES_ADDONS"
USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND"
USE_ORDER="env:pkg:conf:defaults:pkginternal:env.d"
VIDEO_CARDS="intel fbdev vesa"
WINDOWID="69206178"
WINDOWPATH="7"
XAUTHORITY="/root/.xauthdgCY91"
XCURSOR_THEME="Silver"
XDG_CONFIG_DIRS="/etc/xdg"
XDG_DATA_DIRS="/usr/share:/usr/local/share:/usr/share"
XDG_MENU_PREFIX="kde-4.5-"
XDG_SESSION_COOKIE="e8e94d57aea130040f76150d4aa4210b-1295885371.867743-1680123875"
XDM_MANAGED="method=classic"
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"
XZ_OPT="--memory=max"
_="/usr/bin/emerge"
Comment 8 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2011-01-24 23:32:17 UTC
- Which version of g-cpan are you using?
- Do you have another lurking copy of Switch.pm somewhere?
- The missing configuration bit is just noise (And is already fixed in the g-cpan source).
- The Storable version is also noise.

For comparision, here is my the output of "g-cpan -v -i Switch" (I've trimmed part of the ebuild process):
 * Getting CPAN Info for Switch
-CPAN: Storable loaded ok (v2.25)
Going to read '/var/tmp/g-cpan/.cpan/Metadata'
  Database was generated on Mon, 24 Jan 2011 07:32:13 GMT
 * Scanning /usr/local/portage for Switch
 * Scanning /usr/portage for Switch
 * Scanning /code/gentoo/gentoo-git/mysql for Switch
 * Scanning /code/layman/java-overlay for Switch
|CPAN: Digest::SHA loaded ok (v5.50)
CPAN: Compress::Zlib loaded ok (v2.033)
Checksum for /var/tmp/g-cpan/.cpan/sources/authors/id/R/RG/RGARCIA/Switch-2.16.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.76)
Switch-2.16/
Switch-2.16/t/
Switch-2.16/t/given.t
Switch-2.16/t/switch.t
Switch-2.16/t/nested.t
Switch-2.16/MANIFEST
Switch-2.16/META.yml
Switch-2.16/Changes
Switch-2.16/Switch.pm
Switch-2.16/README
Switch-2.16/Makefile.PL
CPAN: File::Temp loaded ok (v0.22)
CPAN: Parse::CPAN::Meta loaded ok (v1.40)
 * Checking on dependency Filter::Util::Call for Switch
 * Filter::Util::Call is part of the core perl install
 * Checking on dependency Text::Balanced for Switch
 * Text::Balanced is part of the core perl install
 * Create directory '/usr/local/portage/dev-perl/Switch'
 * Create directory '/usr/local/portage/dev-perl/Switch/files'
 * Generating ebuild for Switch
 * Copying /var/tmp/g-cpan/.cpan/sources/authors/id/R/RG/RGARCIA/Switch-2.16.tar.gz to /home/gentoo/distfiles
 * Ebuild generated for Switch
>>> Creating Manifest for /usr/local/portage/dev-perl/Switch
 * Calling emerge for Switch

 * Calling: emerge  Switch
Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) dev-perl/Switch-2.16 from local
 * Switch-2.16.tar.gz RMD160 SHA1 SHA256 size ;-) ...                                                                                                                                                                                                                       [ ok ]
 * Package:    dev-perl/Switch-2.16
 * Repository: local
 * USE:        amd64 elibc_glibc kernel_linux multilib userland_GNU
 * FEATURES:   ccache preserve-libs sandbox splitdebug userpriv
>>> Unpacking source...
>>> Unpacking Switch-2.16.tar.gz to /dev/shm/portage/dev-perl/Switch-2.16/work
>>> Source unpacked in /dev/shm/portage/dev-perl/Switch-2.16/work
>>> Preparing source in /dev/shm/portage/dev-perl/Switch-2.16/work/Switch-2.16 ...
>>> Source prepared.
>>> Configuring source in /dev/shm/portage/dev-perl/Switch-2.16/work/Switch-2.16 ...
...
>>> Installing (1 of 1) dev-perl/Switch-2.16

>>> Recording dev-perl/Switch in "world" favorites file...

 * Messages for package dev-perl/Switch-2.16:

 * Package:    dev-perl/Switch-2.16
 * Repository: local
 * USE:        amd64 elibc_glibc kernel_linux multilib userland_GNU
 * FEATURES:   ccache preserve-libs sandbox splitdebug userpriv
 * Using ExtUtils::MakeMaker
 * perl Makefile.PL PREFIX=/usr INSTALLDIRS=vendor INSTALLMAN3DIR=none DESTDIR=/dev/shm/portage/dev-perl/Switch-2.16/image/
 * emake OTHERLDFLAGS=-Wl,-O1 -Wl,--as-needed
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.
 * Cleaning temporary space
Comment 9 Sven Eden 2011-01-25 09:55:23 UTC
(In reply to comment #8)
> - Which version of g-cpan are you using?
I tried with 0.16.2 and 0.16.3.

> - Do you have another lurking copy of Switch.pm somewhere?
Well, of course I have, as it will be removed, but isn't yet.

 # find /usr/lib64/perl5/ -iname 'Switch.pm'
/usr/lib64/perl5/vendor_perl/5.12.2/CGI/Switch.pm
/usr/lib64/perl5/5.12.2/CGI/Switch.pm
/usr/lib64/perl5/5.12.2/Switch.pm

> - The missing configuration bit is just noise (And is already fixed in the
> g-cpan source).
> - The Storable version is also noise.

So I daresay those can be ignored, right?

(snip)
>  * Generating ebuild for Switch
This is the one I do not get. No ebuild is generated, and I do not understand this. I would if there where an ebuild for Switch, but there isn't.

From looking into g-cpan, it seems like only the deps but not Switch show up in $really_install. And it wouldn't get added unless (-f $ebuild) is false, or $upgrade is false or $upgrade is true and the ebuild is added to $passed_to_install. But I haven't had the time to dig into this further.
Comment 10 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2011-01-26 02:02:13 UTC
(In reply to comment #9)

>  # find /usr/lib64/perl5/ -iname 'Switch.pm'
> /usr/lib64/perl5/vendor_perl/5.12.2/CGI/Switch.pm
> /usr/lib64/perl5/5.12.2/CGI/Switch.pm
> /usr/lib64/perl5/5.12.2/Switch.pm

There's always the possibility of it being outside /usr/lib64 ie: 

perl -V  
  look in all @INC 

And to see which one you're probably loading: 

perl -MSwitch -e 'print $INC{q{Switch.pm}}'

Comment 11 Sven Eden 2011-01-26 19:07:47 UTC
(In reply to comment #10)
> (In reply to comment #9)
> 
> >  # find /usr/lib64/perl5/ -iname 'Switch.pm'
> > /usr/lib64/perl5/vendor_perl/5.12.2/CGI/Switch.pm
> > /usr/lib64/perl5/5.12.2/CGI/Switch.pm
> > /usr/lib64/perl5/5.12.2/Switch.pm
> 
> There's always the possibility of it being outside /usr/lib64 ie: 
> 
> perl -V  
>   look in all @INC 

Oki doki, that sounds like very good idea.

> 
> And to see which one you're probably loading: 
> 
> perl -MSwitch -e 'print $INC{q{Switch.pm}}'
> 

Okay, here we go. First the "what am I using"-test:

sed-notebook ~ # perl -MSwitch -e 'print "$INC{q{Switch.pm}}\n"'
/usr/lib64/perl5/5.12.2/Switch.pm
sed-notebook ~ # grep "VERSION =" /usr/lib64/perl5/5.12.2/Switch.pm
$VERSION = '2.16';
sed-notebook ~ # g-cpan -s Switch | grep " Switch "
Module  < Switch                 (RGARCIA/Switch-2.16.tar.gz)

It is the same version. So g-cpan might think that no update (or replacement) is neccessary because of this? Can this be the case?

However, the second test would be to go looking for a different Switch.pm in @INC :

sed-notebook ~ # perl -V | grep -A 99 INC
  @INC:
    /etc/perl
    /usr/lib64/perl5/site_perl/5.12.2/x86_64-linux-thread-multi
    /usr/lib64/perl5/site_perl/5.12.2
    /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux-thread-multi
    /usr/lib64/perl5/vendor_perl/5.12.2
    /usr/lib64/perl5/5.12.2/x86_64-linux-thread-multi
    /usr/lib64/perl5/5.12.2
    /usr/lib64/perl5/site_perl
    /usr/lib64/perl5/vendor_perl
    /usr/local/lib/site_perl
    .
sed-notebook ~ # LC_ALL="C" find . /etc/perl /usr/local/lib/site_perl /usr/lib64/perl5 -iname 'Switch.pm'
find: `/etc/perl': No such file or directory
find: `/usr/local/lib/site_perl': No such file or directory
/usr/lib64/perl5/vendor_perl/5.12.2/CGI/Switch.pm
/usr/lib64/perl5/5.12.2/CGI/Switch.pm
/usr/lib64/perl5/5.12.2/Switch.pm


No. Nothing. I would have loved to find some stray module somewhere there to be able to close this issue.

I will again after I manually lowered the version of the three found Switch.pm.
Comment 12 Sven Eden 2011-01-26 19:19:13 UTC
(In reply to comment #11)
> I will again after I manually lowered the version of the three found Switch.pm.
> 

Now this is weird. Lowering the version didn't help. And renaming didn't help either:

sed-notebook ~ # mv /usr/lib64/perl5/5.12.2/Switch.pm /usr/lib64/perl5/5.12.2/Switch.pm.old
sed-notebook ~ # g-cpan -i -v Switch
 * Getting CPAN Info for Switch
-CPAN: Storable loaded ok (v2.20)
Going to read '/var/tmp/g-cpan/.cpan/Metadata'
  Database was generated on Wed, 26 Jan 2011 18:41:46 GMT
 * Scanning /usr/local/portage for Switch
 * Scanning /var/lib/layman/gamerlay for Switch
 * Scanning /var/lib/layman/lxde for Switch
 * Scanning /var/lib/layman/sunrise for Switch
 * Scanning /var/lib/layman/x11 for Switch
 * Scanning /var/lib/layman/vmware for Switch
 * Scanning /usr/portage for Switch
 * Scanning /var/lib/layman/pro-audio for Switch
|CPAN: Digest::SHA loaded ok (v5.47)
CPAN: Compress::Zlib loaded ok (v2.02401)
Checksum for /var/tmp/g-cpan/.cpan/sources/authors/id/R/RG/RGARCIA/Switch-2.16.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.54)
Switch-2.16/
Switch-2.16/t/
Switch-2.16/t/given.t
Switch-2.16/t/switch.t
Switch-2.16/t/nested.t
Switch-2.16/MANIFEST
Switch-2.16/META.yml
Switch-2.16/Changes
Switch-2.16/Switch.pm
Switch-2.16/README
Switch-2.16/Makefile.PL
CPAN: File::Temp loaded ok (v0.22)
CPAN: Parse::CPAN::Meta loaded ok (v1.40)
 * Checking on dependency Filter::Util::Call for Switch
 * Filter::Util::Call is part of the core perl install
 * Checking on dependency Text::Balanced for Switch
 * Text::Balanced is part of the core perl install
 * Nothing to install!!
 * Cleaning temporary space


How can this be?
Comment 13 Sven Eden 2011-01-26 19:21:48 UTC
Sorry for three comments in a row. The last one is missing something that didn't get submitted by accident. My fault I guess, but however, I made sure that the old Switch is out of the way before trying again:

sed-notebook ~ # perl -MSwitch -e 'print "$INC{q{Switch.pm}}\n"'
Can't locate Switch.pm in @INC (@INC contains: /etc/perl /usr/lib64/perl5/site_perl/5.12.2/x86_64-linux-thread-multi /usr/lib64/perl5/site_perl/5.12.2 /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux-thread-multi /usr/lib64/perl5/vendor_perl/5.12.2 /usr/lib64/perl5/5.12.2/x86_64-linux-thread-multi /usr/lib64/perl5/5.12.2 /usr/lib64/perl5/site_perl /usr/lib64/perl5/vendor_perl /usr/local/lib/site_perl .).
BEGIN failed--compilation aborted.
Comment 14 Sven Eden 2011-01-26 20:05:28 UTC
And the fourth:

SOLVED!

My make.conf had this entry:
GCPAN_OVERLAY="${PORTDIR_OVERLAY}/g-cpan"

Although this worked in the past, this does not work any more. The list command goes through everything in PORTDIR_OVERLAY and thus found the ebuilds installed by g-cpan (several months ago!), but the subdir g-cpan simply does not exist.

I changed the line to
GCPAN_OVERLAY="${PORTDIR_OVERLAY}"

and now Switch is successfully installed.

----

So I suggest to print out a big fat error message in g-cpan when $GCPAN_OVERLAY is set, but the directory does not exist. Because in that case, PORTDIR_OVERLAY is not searched when generating a new ebuild. The program simply quits stating "Nothing to install".