OS X Foundation.pm, PerlObjCBridge, and Wacom tablet issues

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View
Foundation.pm is a Mac OS X package that lets Perl programs access the
Objective-C libraries. It's not part of CPAN, it just ships with the OS
X version of Perl.

I have a Wacom tablet. The latest installer for the driver runs a Perl
script called postflight, that invokes Foundation.pm.

Rather than using the default Perl installation that ships with OS X,
I've long ago downloaded, built, and installed Perl into /usr/bin/perl.
This works flawlessly, except that Perl can no longer find
Foundation.pm. I discovered this tonight when attempting to install the
latest Wacom tablet driver.

I fixed that problem up by adding the line

use lib '/System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level';

to the postflight script. That's where Foundation.pm lives. However I
now get the error message

dyld: lazy symbol binding failed: Symbol not found: _Perl_Gthr_key_ptr
  Referenced from:
  Expected in: dynamic lookup

There are some Google hits for this error, some of them indicating
problems with libperl. However I'm not sure why I'm getting the error
and I'm not sure what to do.

Has anyone sorted through these issues? I really don't want to have to
reinstall Tiger just to be forced to use the default installation of
Perl just so I can update my Wacom driver. There must be an easier way!!

Any suggestions appreciated. I'm on 10.4.11.

Re: OS X Foundation.pm, PerlObjCBridge, and Wacom tablet issues

Quoted text here. Click to load it

Don't do that. Did you read the section in README.macosx where it says
that? Overwriting the perl that ships with a system is nearly always a
bad idea. You should have installed your own perl into /usr/local,
though it would also have been better if OSX had done as Solaris does
and kept the system perl in /opt where it is out of the way.

Quoted text here. Click to load it

Which version of perl have you installed? What Configure options did you
use (in particular, did you build with ithreads/multiplicity/2level
libs/a shared libperl)? Are these the same as the system version of perl
(unlikely, as I would expect Configure to have added that directory to
@INC itself if it was going to work)? In general you shouldn't 'use lib'
with an arch-specific directory like that: if it's the right arch lib.pm
will find it on its own.

Quoted text here. Click to load it

If you can find the XS source for the Foundation module (I don't know
whether it's part of the open-source bit of OSX or not) you may be able
to recompile it for your current perl. Otherwise you'll need to revert
to the correct perl for your system, I'm afraid. If it does come to that
I would expect you can get the system installer to just reinstall perl,
without redoing the rest of the installation. It may be wise to follow
the instructions in README.macosx about nuking all perl-related stuff


Re: OS X Foundation.pm, PerlObjCBridge, and Wacom tablet issues

Quoted text here. Click to load it

Thank you much for your detailed reply. I've never had a problem with my
custom Perl installation before. Now that I've had the chance to think
about these issues, I realized that re-installing Tiger is the only way
to go. Otherwise I'll probably have more trouble down the road. I did a
clean install of Tiger, and now the Wacom driver installs without

I was running Perl 5.8.7, while the Tiger version is 5.8.6. That
probably accounts for the linker problems I encountered when trying to
work around this situation.

Thanks again.

Site Timeline