Canfield Research Group LLC
  • Home
  • Jobs
  • Blogs
    • Company
    • On Error Do
  • Contact Us
  • Projects
    • Astronomy
  • Privacy Policy

Percon a Toolkit Failed Dependencies perl(IO::Socket::SSL)

2/25/2014

1 Comment

 
The Percona Toolkit for MySQL (and derivatives) can be retrieved as an RPM. If during installation (rpm -Uvh) you may receive:
  • error: Failed dependencies:
    perl(IO::Socket::SSL) is needed by percona-toolkit-2.2.7-1.noarch


The RPM system is looking for an RPM for the IO::Socket::SSL module. This error can appear if your system is using CPAN as the source for Perl packages and not the CentOS/Redhat repositories. There are many reasons a systems administrator may be using CPAN, often it is to get the latest versions of needed packages.

Possible solutions
  • Using repository: yum install perl-IO-Socket-SSL
  • Build a new updated RPM (which can be tedious painful)
  • Installed IO::Socket::SSL from CPAN, override the RPM error:
    rpm -Uvh --nodeps percona-toolkit-2.2.7-1.noarch

The last option is what I had to use but be very cautious as this will install the package even if other dependencies are missing. Normally RPM will warn you of all missing dependencies but not always. Test things to be sure they all work.
1 Comment

Install CPANMinus in CentOS 6 (aka CPANM)

2/23/2014

2 Comments

 
CPANM is a handy little tool for quickly getting modules installed. It is a simplified version of CPAN. I like CPANM for quick tasks and it has become one of my main go to tools. I use CPAN, or manually building when I need to do unusual things or CPANM fails.

See the following for all the fun
  • http://search.cpan.org/~miyagawa/App-cpanminus-1.7001/bin/cpanm


For CentOS 6 and other similar RedHat/Yum systems
  • yum install perl-devel
  • yum install perl-CPAN
  • curl -L http://cpanmin.us | perl - --sudo App::cpanminus
  • Wait a few minutes as a lot is going on


Example of use

  • sudo /usr/local/bin/cpanm CGI

To make /usr/local/bin one of your search directories (do this at your own risk)

  • Edit ~root/.bash_profile (root is the typical CPANM user unless you install CPANM as a local user)
  • Append the following to the end of the file or anywhere you like
  • # Add local bin (mostly for CPANM)
    PATH=$PATH:/usr/local/bin


2 Comments

CPAN error: Compress::Zlib::gzopen undefined

11/4/2008

2 Comments

 
During routine maintenance I noticed that CPAN was failing operate properly and giving me an error I had not seen before. (updated 2014-02-25 with related errors seen on another system)
  • Undefined subroutine &Compress::Zlib::gzopen called at /usr/lib/perl5/5.8.8/CPAN.pm line 5721
  • Use of uninitialized value in concatenation (.) or string at /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/Scalar/Util.pm line 30.



(Update: The error was also seen on CentoS 5.5 while installing IO::Socket::SSL via CPAN and the fix below resolved this problem)


This may have happened when I installed awstats on my CentOS5 VPS. It grabbed a yum for Compress::Zlib. I suspect something odd happened and and now CPAN fails. I lack the time right now to track this down for sure and this is a production system so doing a full YUM update is something I need to avoid for a bit.

The fix is to manually bring things into compliance. Using the YUM to obtain the perl-Package-Name would probably be a good Idea but they do not appear to be quite right. The following is what I ended up doing although the path to get here felt like 2 steps forward 1 back. All files were retrieved manually from www.cpan.org via wget (use CPAN search and use the package name as the term) and then the standard Perl mantra; perl Makefile.PL, make, make test, make install. The order of installs is important! I determined the order by examining the warnings from perl Makefile.PL and make test.
  • Scalar::Util — required because IO:Compress failed test due to XS not being in my Scalar package
  • Compress::Raw::Bzip2
  • Compress::Raw::Zlib — per Compress::Zlib makefile operation
  • IO::Compress - as of 2014-02 this includes Base and Gzip, prior to that you may need to download those separate: IO::Compress::Base and IO::Compress::Gzip (Note: This takes a long time for tests).
  • Compress::Zlib — the faulty package
After this was done all was good and CPAN now works!

2 Comments

    On Error Do

    A blog in question/answer and problem/solution format.

    Author

    Robb Canfield, CEO of Canfield Research Group.

    Archives

    February 2014
    November 2008

    Categories

    All
    Archives
    Linux
    Perl

    RSS Feed


Copyright 2018 by Canfield Research Group LLC