Cygwin perl is broken after I upgrate to version 5.8.8-4. Let’s fix it!
You have to remove Compress::Zlib first. Otherwise, cpan wouldn’t work.
$ rm -fr `find /usr/lib/perl5/ | grep Compress | grep Zlib`
Then, you have to recompile Scalar::Util yourself because weaken is not supported by default.
cpan> force install Scalar::Util
Now, it’s time to upgrade CPAN.
cpan> install CPAN
If you want Compress::Zlib back, remove IO::Uncompress::Inflate first. There is a circular dependence between IO::Compress::Bzip2 and IO::Uncompress::Inflate. Unless you remove this inconsistency, Compress::Zlib can’t be installed.
$ rm -fr `find /usr/lib/perl5/ | grep Uncompress | grep '\bInflate'`
Finally, I recommend you reinstall Bundle::CPAN and Bundle::Test.