Keywords: perl CPAN Net::SSH dependency problems errors strange weird You get: A module you're trying to install (for me it was Net::SSH) fail strangley. Some dependencies (MD5 for me) seem to install ok, but then the entire install will fail on "make test". Then when you try it again, it installs the dependencies all over again and nothing seems to go anywhere. The problem: Your installation path is incorrect. CPAN is installing the dependencies somewhere where perl cannot find them, which is why the dependencies do not get detected and keep being reinstalled To check on this: check the value of the "makepl_arg" in the CPAN config. you need to be root or run as sudo: $ sudo grep makepl_arg /root/.cpan/CPAN/MyConfig.pm 'makepl_arg' => q[PREFIX=/usr/local INSTALLMAN1DIR=/usr/local/share/man/man1 INSTALLMAN3DIR=/usr/local/share/man/man3], ok, CPAN is telling make to prefix everything with /usr/local. now let's see if perl was compiled to check there: $ perl -le'print for @INC' | grep "/usr/local" /usr/local/lib/site_perl we do see one entry, but @INC seemed much longer than one or two entries, lets look at the whole thing: $ perl -le'print for @INC' /etc/perl /usr/lib/perl5/site_perl/5.8.4/i686-linux /usr/lib/perl5/site_perl/5.8.4 /usr/lib/perl5/site_perl/5.8.2/i686-linux /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.0/i686-linux /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.4/i686-linux /usr/lib/perl5/vendor_perl/5.8.4 /usr/lib/perl5/vendor_perl/5.8.2/i686-linux /usr/lib/perl5/vendor_perl/5.8.2 /usr/lib/perl5/vendor_perl/5.8.0/i686-linux /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.4/i686-linux /usr/lib/perl5/5.8.4 /usr/local/lib/site_perl /usr/lib/perl5/site_perl/5.8.2/i686-linux /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.0/i686-linux /usr/lib/perl5/site_perl/5.8.0 . it looks like perl is really set up to search /usr instead of /usr/local Unfortunately, I've been told by those know know more about perl than myself that @INC cannot be easily permanently changed, because it's set at compile time. So, instead we need to tell CPAN to tell make to put things in /usr instead of /usr/local edit /root/.cpan/CPAN/MyConfig.pm as root or with sudo and change the value then start cpan up again and try the install this worked for me, hope it helps you Disclaimer: I am not an expert on the subject, I'm just a guy who ran into a problem and wrote about how I fixed it. # ex: set ts=8 tw=78: