diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2002-07-16 13:06:04 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-07-16 13:06:04 +0000 |
commit | 0836e5e3962c58e17effde4d4fc0a6c5efc88f20 (patch) | |
tree | cf5854811d7ff5043db5944c92d4ab15e58bc575 /pod/perldelta.pod | |
parent | 3a6b268dfb0ee30ac0bbaee8f809c2b133695d8f (diff) | |
download | perl-0836e5e3962c58e17effde4d4fc0a6c5efc88f20.tar.gz |
More explicit solution for the Mac OS X "dyld undefined symbols"
problem.
p4raw-id: //depot/perl@17572
Diffstat (limited to 'pod/perldelta.pod')
-rw-r--r-- | pod/perldelta.pod | 37 |
1 files changed, 31 insertions, 6 deletions
diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 73a782d028..1b55dd471e 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -3189,12 +3189,17 @@ Use PDL 2.3.4 or later. =head2 Perl_get_sv -You may get errors like 'Undefined symbol "Perl_get_sv"' or -"can't resolve symbol 'Perl_get_sv'". This probably means that -you are trying to use an older shared Perl library with Perl 5.8.0 -executable. Perl used to have such a subroutine, but that is no more -the case. Check your shared library path, and any shared Perl -libraries in those directories. +You may get errors like 'Undefined symbol "Perl_get_sv"' or "can't +resolve symbol 'Perl_get_sv'", or the symbol may be "Perl_sv_2pv". +This probably means that you are trying to use an older shared Perl +library (or extensions linked with such) with Perl 5.8.0 executable. +Perl used to have such a subroutine, but that is no more the case. +Check your shared library path, and any shared Perl libraries in those +directories. + +Sometimes this problem may also indicate a partial Perl 5.8.0 +installation, see L</"Mac OS X dyld undefined symbols"> for an +example and how to deal with it. =head2 Self-tying Problems @@ -3453,6 +3458,26 @@ this is not Perl's fault-- the libc of Mac OS X is not threadsafe (in this particular test, the localtime() call is found to be threadunsafe.) +=head2 Mac OS X dyld undefined symbols + +If after installing Perl 5.8.0 you are getting warnings about missing +symbols, for example + + dyld: perl Undefined symbols + _perl_sv_2pv + _perl_get_sv + +you probably have an old pre-Perl-5.8.0 installation (or parts of one) +in /Library/Perl (the undefined symbols used to exist in pre-5.8.0 Perls). +It seems that for some reason "make install" doesn't always completely +overwrite the files in /Library/Perl. You can remove the shared +libraries for example like this: + + # find /Library/Perl -name '*.bundle' -print | xargs rm -i + +and then reissue "make install". (If you already installed some XS +extensions beyond the Perl core, you will have to reinstall them, too.) + =head2 OS/2 Test Failures The following tests are known to fail on OS/2 (for clarity |