12

Mar

Filed in Mac |

As many users like myself probably have noticed, Apple seriously fucked us with their latest security release. From what I’ve read, they reverted Perl to an older version which doesn’t support some common features.

I began receiving errors such as the following with fink and other applications:

  • IO object version 1.22 does not match bootstrap parameter 1.23
  • Storable object version 2.15 does not match $Storable::VERSION 2.18
  • DB_File object version 1.814 does not match bootstrap parameter 1.817

After a bit of searching, and trying some various things, I’ve come up with the following solution (which may be specific to my problems):

mkdir -p /fixforperl
cd !$
curl -O http://search.cpan.org/CPAN/authors/id/G/GB/GBARR/IO-1.2301.tar.gz
curl -O http://search.cpan.org/CPAN/authors/id/P/PM/PMQS/DB_File-1.819.tar.gz
curl -O http://search.cpan.org/CPAN/authors/id/A/AM/AMS/Storable-2.18.tar.gz
tar xzf IO-1.2301.tar.gz
tar xzf DB_File-1.819.tar.gz
tar xzf Storable-2.18.tar.gz
cd IO-1.2301 && perl Makefile.PL && make && sudo make install && cd ..
cd DB_File-1.819 && perl Makefile.PL && make && sudo make install && cd ..
cd Storable-2.18 && perl Makefile.PL && make && sudo make install && cd ..

There may be other libraries which you need to update as well. These are just the ones I’ve encountered so far. The process is the same for each library. Simply grab the package off of CPAN, run the Makefile.PL, and make install.

  • http://trojanbadger.com Teilo

    This was so bad, that nothing I tried worked. Manually building and installing Storable was a no-go. (Isn’t Storable built in to Perl 5.8 already?). I finally gave up, and rebuilt Fink from scratch. Very painful. And now, it locks up every time it is scanning the package list at the end of an install. Thanks for nothing, Apple.

    There should be a way to completely blow away Apple’s Perl build and reinstall it – but since they bundle it with OS and Security updates, there’s no way I have found to do this. Apple needs to move to some sort of package-based update system – even if only for the Unix/X packages.

  • http://michielsen.us mattmichielsen

    Thanks for the quick fix info. Like the other commenter, I agree that Apple should use a package manager (preferably dpkg/apt) for at least base system packages. I can understand that they like to keep user-level applications in their own .App directories.

  • http://trojanbadger.com Teilo

    For the record: Anyone who had the Storable problem, and has upgraded the Storable module in any way, you could run into trouble with the scanpackages.db file. In my case, Perl was pegging the CPU every time fink was trying to run scanpackages.

    The fix is simple:

    rm /sw/var/lib/fink/scanpackages.db

    fink scanpackages

blog comments powered by Disqus