Thread: Perl_save_vptr
Hi, Please help with this one! When I was upgrading to 7.1.2 I had problems getting plperl to compile. During createlang I got messages about "Perl_save_vptr" etc. I saw a reference to a similar message in the newsgroup and used Peter Eisentraut's "wildish guess" patch and recompiled. ---patch------- >>Here's a wildish guess: Get out your PostgreSQL sources, go to the >>directory src/backend/port/dynloader, file linux.h and change >> >> dlopen(f, 2) >> >>to >> >> dlopen(f, RTLD_LAZY | RTLD_GLOBAL) >> >>and rebuild the backend ---end patch-- After that rebuild, creatlang worked and I thought I was all set to go. But...the backend now terminates during a select which contains a call to a plperl function. Technical data: (PostgreSQL) 7.1.2 perl, v5.6.1 built for i686-linux Linux shifty.dph.sf.ca.us 2.2.14-5.0 Server log snippet: postgres: miller omc [local] SELECT: error in loading shared libraries: /usr/lib/perl5/5.6.1/i686-linux/auto/Opcode/Opcode.so: undefined symbol: Perl_save_vptr /usr/bin/postmaster: reaping dead processes... /usr/bin/postmaster: CleanupProc: pid 1041 exited with status 32512 Server process (pid 1041) exited with status 32512 at Wed Aug 22 11:38:17 2001 Terminating any active server processes... Server processes were terminated at Wed Aug 22 11:38:17 2001 Reinitializing shared memory and semaphores etc... Thanks in advance, -km
Problem solved. Nothing to do with postgres per se. All related to linker problems. ldconfig was pointing to /usr/lib/libperl.so which is fine but /usr/lib/libperl.so was out of date. Reset the /usr/lib/libperl.so link to point to the current perl release lib and everything is set to go. -km "Kurt Miller" <miller_kurt_e@hotmail.com> wrote in message news:9m0vok$27ke$1@news.tht.net... > Hi, > > Please help with this one! > > When I was upgrading to 7.1.2 I had problems getting plperl to compile. > During createlang I got messages about "Perl_save_vptr" etc. I saw a > reference to a similar message in the newsgroup and used Peter Eisentraut's > "wildish guess" patch and recompiled. > > ---patch------- > >>Here's a wildish guess: Get out your PostgreSQL sources, go to the > >>directory src/backend/port/dynloader, file linux.h and change > >> > >> dlopen(f, 2) > >> > >>to > >> > >> dlopen(f, RTLD_LAZY | RTLD_GLOBAL) > >> > >>and rebuild the backend > ---end patch-- > > After that rebuild, creatlang worked and I thought I was all set to go. > But...the backend now terminates during a select which contains a call to a > plperl function. > > Technical data: (PostgreSQL) 7.1.2 > perl, v5.6.1 built for i686-linux > Linux shifty.dph.sf.ca.us 2.2.14-5.0 > > Server log snippet: > > postgres: miller omc [local] SELECT: error in loading shared libraries: > /usr/lib/perl5/5.6.1/i686-linux/auto/Opcode/Opcode.so: undefined symbol: > Perl_save_vptr > /usr/bin/postmaster: reaping dead processes... > /usr/bin/postmaster: CleanupProc: pid 1041 exited with status 32512 > Server process (pid 1041) exited with status 32512 at Wed Aug 22 11:38:17 > 2001 > Terminating any active server processes... > Server processes were terminated at Wed Aug 22 11:38:17 2001 > Reinitializing shared memory and semaphores > etc... > > Thanks in advance, -km > > >