Обсуждение: plperl/createlang issue

Поиск
Список
Период
Сортировка

plperl/createlang issue

От
"Ed L."
Дата:
I'm trying to load plperl to experiment with it in 7.3.4 with perl v5.8.0.
I've basically tried the following:

    configure --with-perl, then
    initdb, then
    start postmaster, then
    createlang plplerl template1

No matter what I try, I keep getting this error:

$ createlang plperl template1
ERROR:  Load of file /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so
failed: libperl.so: cannot open shared object file: No such file or
directory
createlang: language installation failed

But it sure looks like its there to me:

$ ls -l /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so
-rwxr-xr-x    1 pg       pg          35770 Nov 11 19:39
/opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so*

I *think* my perl is threaded based on perl -v:

$ perl -v

This is perl, v5.8.0 built for i386-linux-thread-multi
...

Any clues for the clueless?

TIA.

Ed


Re: plperl/createlang issue

От
Larry Rosenman
Дата:

--On Tuesday, November 11, 2003 19:22:50 -0700 "Ed L."
<pgsql@bluepolka.net> wrote:

> I'm trying to load plperl to experiment with it in 7.3.4 with perl
> v5.8.0.   I've basically tried the following:
>
>     configure --with-perl, then
>     initdb, then
>     start postmaster, then
>     createlang plplerl template1
>
> No matter what I try, I keep getting this error:
>
> $ createlang plperl template1
> ERROR:  Load of file /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so
> failed: libperl.so: cannot open shared object file: No such file or
> directory
> createlang: language installation failed
>
> But it sure looks like its there to me:
>
> $ ls -l /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so
> -rwxr-xr-x    1 pg       pg          35770 Nov 11 19:39
> /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so*
>
> I *think* my perl is threaded based on perl -v:
The issue is there is no libperl.so (from the perl build).

Check your PERL build.

>
> $ perl -v
>
> This is perl, v5.8.0 built for i386-linux-thread-multi
> ...
>
> Any clues for the clueless?
>
> TIA.
>
> Ed
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 8: explain analyze is your friend
>



--
Larry Rosenman                     http://www.lerctr.org/~ler
Phone: +1 972-414-9812                 E-Mail: ler@lerctr.org
US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749

Вложения

Re: plperl/createlang issue

От
Tom Lane
Дата:
"Ed L." <pgsql@bluepolka.net> writes:
> No matter what I try, I keep getting this error:
> $ createlang plperl template1
> ERROR:  Load of file /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so
> failed: libperl.so: cannot open shared object file: No such file or
> directory

The error message probably does not mean what it appears to say.
The odds are that the "no such file" applies not to plperl.so itself,
but to some shared library that it depends on directly or indirectly
--- in other words, libperl.so or something that libperl depends on.
Unix dynamic loaders are *notoriously* bad about delivering useful
error messages in this sort of situation :-(

You probably need to fool with your ldconfig configuration to make
sure all of the needed libraries are in ldconfig's search path.
ldd is a useful tool for seeing how library references are being
resolved.

            regards, tom lane

Re: plperl/createlang issue

От
Alvaro Herrera
Дата:
On Tue, Nov 11, 2003 at 07:22:50PM -0700, Ed L. wrote:

> $ createlang plperl template1
> ERROR:  Load of file /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so
> failed: libperl.so: cannot open shared object file: No such file or
> directory
> createlang: language installation failed

> This is perl, v5.8.0 built for i386-linux-thread-multi

Try ldd /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so

If it points out any "not found" libraries, there's something you need
to play with (probably /etc/ld.so.conf).

--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
Al principio era UNIX, y UNIX habló y dijo: "Hello world\n".
No dijo "Hello New Jersey\n", ni "Hello USA\n".

Re: plperl/createlang issue

От
Christopher Murtagh
Дата:
On Tue, 2003-11-11 at 21:22, Ed L. wrote:
> $ createlang plperl template1
> ERROR:  Load of file /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so
> failed: libperl.so: cannot open shared object file: No such file or
> directory
> createlang: language installation failed

 I had the exact problem recently, and I found the solution.

 1) First, locate your libperl.so file. On my PPC box it was:

 [chris@mafalda chris]$ locate libperl.so
/usr/lib/perl5/5.8.0/ppc-linux-thread-multi/CORE/libperl.so


 2) Add that directory to /etc/ld.so.conf

 3) run ldconfig (as root)

 Then your creatlang statement should work.

 Hope that helps.

Cheers,

Chris

> But it sure looks like its there to me:
>
> $ ls -l /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so
> -rwxr-xr-x    1 pg       pg          35770 Nov 11 19:39
> /opt/pgsql/installs/postgresql-7.3.4/lib/plperl.so*
>
> I *think* my perl is threaded based on perl -v:
>
> $ perl -v
>
> This is perl, v5.8.0 built for i386-linux-thread-multi
> ...
>
> Any clues for the clueless?
>
> TIA.
>
> Ed
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 8: explain analyze is your friend