I tried to use perl 5.6.1+ on PL/Perl, even though I successfully
created libperl.so file and get compile done(gmake no complaint), but I
still failed at load. Following is my steps:
(OS: FreeBSD-4.7, PostgreSQL 7.3.2, Perl 5.6.1)
cd /usr/ports/lang/perl5
make
cd work/perl-5.6.1
LD_LIBRARY_PATH=`pwd`
export LD_LIBRARY_PATH
sh Configure -Duseshrplib
For every question, I take the default, except:
Build a shared libperl.so (y/n) [n] y
What name do you want to give to the shared libperl? [libperl.a]
libperl.so.5.6.1
after that
make
make test
make install
(perl 5.6.1 executable is installed at /usr/local/bin/)
make a symbolic like with libperl.so->libperl.so.5.6.1
which is under /usr/local/lib/perl5/5.6.1/mach/CORE/
then install postgresql
gmake
gmake install
(no complaint at all)
initdb
start postmaster
createlang plperl template1 (compliant)
EERROR: Load of file /usr/local/pgsql/lib/plperl.so failed: dlopen
'/usr/local/pgsql/lib/plperl.so' failed.
(/usr/local/pgsql/lib/plperl.so: Undefined symbol "Perl_sv_2pv_flags")
ERROR: Load of file /usr/local/pgsql/lib/plperl.so failed: dlopen
'/usr/local/pgsql/lib/plperl.so' failed.
(/usr/local/pgsql/lib/plperl.so: Undefined symbol "Perl_sv_2pv_flags")
createlang: language installation failed
What's wrong?
--
Jie LIANG
Software Engineer
St. Bernard Software
10350 Science Center Drive
Suite 100, San Diego, CA 92121
Office:(858)320-4873
jliang@stbernard.com
www.stbernard.com