vi_srikanth has asked for the wisdom of the Perl Monks concerning the following question:


For the past many months my code was working fine with MIME::Base64. But I dont know what happened to the system now! Now, if I try to use the module MIME::Base64, it throws the following error:

hw:/opt/netcore/mofotu/bin # perl -MMIME::Base64 -e1; MIME::Base64 object version 3.05 does not match bootstrap parameter 3. +07 at /usr/lib/perl5/5.8.7/i586-linux-thread-multi/ line 9 +2. Compilation failed in require. BEGIN failed--compilation aborted.

I tried Google, and this is all what I got from the site

How to I prevent "object version X.XX does not match bootstrap parameter Y.YY" errors?

XS code is very sensitive to the module version number and will complain if the version number in your Perl module doesn't match. If you change your module's version # without rerunning Makefile.PL the old version number will remain in the Makefile causing the XS code to be built with the wrong number.
To avoid this, you can force the Makefile to be rebuilt whenever you change the module containing the version number by adding this to your WriteMakefile() arguments.

        depend => { '$(FIRST_MAKEFILE)' => '$(VERSION_FROM)' }

But I am unable to make out anything from the above answer :(

Could anyone of you please help?