Cpan
Inhaltsverzeichnis
upgrade all
perl -MCPAN -e 'CPAN::Shell->install(CPAN::Shell->r)';
or (if you wan't to trust CPAN to choose the default answer for interactive questions):
PERL_MM_USE_DEFAULT=1 perl -MCPAN -e 'CPAN::Shell->install(CPAN::Shell->r)';
CPAN::Shell->install() | installs a package, who would have expected it? ;-) |
CPAN::Shell->r | lists all packages which have updates... |
misc
misc things...
RHEL-5/centos-5 crapy perl
after every yum upgrade of perl on RHEL-5/Centos-5 systems some other issues ocure...
W-T-F !!!
number 1
XS Version of Scalar::Util mismatch
this shitting redhat-bug:
https://bugzilla.redhat.com/show_bug.cgi?id=375621
RH is not able to get rid of it since....
the problem is when perl is updated by rpm-packages i get the following error when running
a perl-script opening an ssl-socket:
You requested that XML::Stream turn the socket into an SSL socket, but you don't have the correct version of IO::Socket::SSL v0.81. at /usr/lib/perl5/site_perl/5.8.8/XML/Stream/Node.pm line 549
then i try
cpan> install IO::Socket::SSL [...] You need the XS Version of Scalar::Util for dualvar() support at Makefile.PL line 57
so to get rid of the message you will have to do:
cpan> force install Scalar::Util [...] Writing /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/List/Util/.packlist /usr/bin/make install -j2 -- OK
after that is run ok, do:
cpan> force install IO::Socket::SSL [...] Writing /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/IO/Socket/SSL/.packlist Manifying blib/man3/IO::Socket::SSL.3pm /usr/bin/make install -j2 -- OK
in the bugreport above they tell you to 'force install Scalar::Util' and then install the
current or newer perl version by: 'rpm -Uvh --force perl-VERSION.rpm'
this was not needed in my case...
number 2
if you get one of these errors installing any package using CPAN:
Undefined subroutine &Scalar::Util::readonly called at /usr/lib/perl5/site_perl/5.8.8/IO/Uncompress/Base.pm line 1104
and
Undefined subroutine &IO::Uncompress::Base::readonly called at /usr/lib/perl5/site_perl/5.8.8/IO/Uncompress/Base.pm line 1075.
follow these steps to fix it:
- search for Scalar::Util at http://search.cpan.org/
- select and download: Scalar-List-Utils in my case it was this version:
http://search.cpan.org/~pevans/Scalar-List-Utils-1.32/ - unpack the tar.gz file
- cd into the package root-directory
- build the package by command-tripple : gmake, gmake test, gmake install
- once you complete this succsessfully
you may run CPAN-Shell again and install your needed packages!
have fun.
reftype
error:
Can't call method "reftype" on unblessed reference at /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/Safe.pm line 370.
can be fixed by replacing 'reftype' to 'ref'
so edit: /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/Safe.pm line 370
and replace line 370:
my $reftype = $item && reftype $item
by:
my $reftype = $item && ref $item