Symbol not found: _Perl_atfork_unlock

20:02 Thursday, 18 October 2007

I’m re-installing the latest in a line of sick iMacs after it has returned to us with new hard disk. I keep getting “perl crashed” messages appearing in the console when doing a software update and when trying to print with cups. The perl crash log tells us why:

Link (dyld) error:

Symbol not found: _Perl_atfork_unlock
Referenced from: /usr/bin/perl
Expected in: /System/Library/Perl/5.8.6/darwin-thread-multi-2level/CORE/libperl.dylib

This is fixed by copying over a version of libperl.dylib which does have the symbol ‘atfork’ (available on every other Mac in the office) But the question is why does this happen. I got the iMac back from an official Apple repair center with a working installation of OS X. I doubt they’d go out of their way to hobble Perl. Is this just a feature of recent upgrades?

So the symptoms where Software Update and printing stopped working. The cause, a hosed Perl. The problem is not always where the symptoms appear. I least I’ve not had to re-install the entire system…

Tags