Re: PlPERL and shared libraries on Suse - Mailing list pgsql-general

From Eric E
Subject Re: PlPERL and shared libraries on Suse
Date
Msg-id 41795D13.5080604@bonbon.net
Whole thread Raw
In response to Re: PlPERL and shared libraries on Suse  (Steve Atkins <steve@blighty.com>)
List pgsql-general
Hi Steve and Tom,
Thanks for the tip, I was clearly not reading the error message closely
enough.

I copied libperl.so into /lib, and now everything works.

Many thanks,

Eric

Steve Atkins wrote:

> On Fri, Oct 22, 2004 at 12:13:12PM -0400, Eric E wrote:
>
>
>>Hi,
>>   I have an installation of Postgres 7.4.2 on SuSE 9.1.  This version
>>of SuSE comes with a binary for plperl and several other postgres
>>procedural languages.  All the others, including plpgsql install without
>>a problem, but executing:
>>   createlang -u postgres plperl template1
>>produces the result:
>>createlang: language installation failed: ERROR:  could not load library
>>"/usr/lib/postgresql/plperl.so": libperl.so: cannot open shared object
>>file: No such file or directory
>>
>>The file, however, is there:
>>
>># ls -l /usr/lib/postgresql/plperl.so
>>-rwxr-xr-x  1 root root 37097 Apr  5  2004 /usr/lib/postgresql/plperl.so
>>
>>Some googling gave me the idea that it may be a problem with the way
>>perl was compiled - i.e, perl is not compiled for shared libraries.  Can
>>anyone confirm this?  If so, do I need to rebuild perl, or pl/perl, or
>>both?  Are there any binaries that can resolve this?  (yes not wanting
>>to compile plperl is plain old laziness, but I do have reservations
>>about recompiling the perl interpreter)
>
>
> The error message gives you the hint you need. The missing file isn't
> plperl.so - it's libperl.so.
>
> libperl.so is the dynamic library version of perl. It's not usually
> installed by most people building perl. (It's also not neccesarily
> needed by plperl.so, as libperl.a can be statically linked into
> plperl.so, I believe).
>
> I don't know SuSEs package system (I always install from source) but
> there may well be another perl package that would provide libperl.so.
> Failing that you'll either need to build a perl installation and tell
> Configure to build libperl.so, or rebuild plperl.so. It's also
> possible that you do have libperl.so somewhere, but it's not on
> the standard library search path and not where plperl expects
> to find it.
>
> 'ldd' is a useful command for tracking down this sort of problem.
>
> Cheers,
>   Steve
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faqs/FAQ.html
>


pgsql-general by date:

Previous
From: Cott Lang
Date:
Subject: Problem with query plan
Next
From: Tom Lane
Date:
Subject: Re: Problem with query plan