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?


Replies are listed 'Best First'.
Re: Does not match bootstrap parameter - MIME::Base64
by syphilis (Archbishop) on Jan 02, 2007 at 12:46 UTC
    Base64 object version 3.05 does not match bootstrap parameter 3.07

    That's telling you that the system is finding version 3.07 of, but also finding version 3.05 of the compiled section (ie of the module. This won't work, as the versions of the '.pm' file and the '.so' file need to match. If you simply re-install MIME::Base64 from source, there's a good chance that will fix the problem. (It shouldn't matter which version you install, but you might as well install the latest.)


      Hi Rob

      Thanks. re-installing MIME::Base64 from the source did the trick.


Re: Does not match bootstrap parameter - MIME::Base64
by jettero (Monsignor) on Jan 02, 2007 at 12:24 UTC
    You apparently have more than one version installed and it's loading parts from one and parts from another. Be thorough (but careful) in removing all your old Base64 stuff and reinstall. You should be golden after that.