Re: createlang error(s) - Mailing list pgsql-general

From John Burski
Subject Re: createlang error(s)
Date
Msg-id 1257297790.5433.18.camel@boris.frostbitefalls.local
Whole thread Raw
In response to Re: createlang error(s)  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
Thanks for your response, Tom!

I got my postgresql build from the from a Novell SuSE Linux repository
(mirror.susestudio.com).

Here's the result of a run of ldd against the plperl.so file:

    linux-gate.so.1 =>  (0xffffe000)
    libperl.so => not found
    libnsl.so.1 => /lib/libnsl.so.1 (0xb76aa000)
    libdl.so.2 => /lib/libdl.so.2 (0xb76a5000)
    libm.so.6 => /lib/libm.so.6 (0xb767c000)
    libcrypt.so.1 => /lib/libcrypt.so.1 (0xb7644000)
    libutil.so.1 => /lib/libutil.so.1 (0xb7640000)
    libpthread.so.0 => /lib/libpthread.so.0 (0xb7626000)
    libc.so.6 => /lib/libc.so.6 (0xb74ca000)
    /lib/ld-linux.so.2 (0xb76f1000)

Apparently it is unable to locate the libperl.so file in its current
location.  It looked like the "libperl.so" file is expected to be in the
"/lib" directory (an assumption, but a good one if figured). I copied
the "libperl.so" file from its original location to the "/lib" directory
and tried the "createlang" command again - SUCCESS!

Thanks for your help!

Best regards!

John Burski

On Sun, 2009-11-01 at 18:00 -0500, Tom Lane wrote:
> John Burski <SnowCritter@charter.net> writes:
> > 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
>
> ldd on plperl.so might be informative.
>
> > The "libperl.so" file is located in the
> > /usr/lib/perl5/5.10.0/i586-linux-thread-multi/CORE directory and has
> > permissions of 555.
>
> I don't know for sure about SUSE, but on Red Hat-derived systems it's
> standard (and no I don't think this is sane) to put plperl.so into
> a directory such as that, but not include that directory in the ldconfig
> search path.  This means that plperl.so MUST have an explicit rpath
> to that directory or it will fail as above.  So if ldd shows plperl.so
> as not resolving its link to libperl.so, that's probably your problem.
>
> Where did you get your postgres build from?  This is pretty clear
> packager error IMHO.
>
> > ... I've also tried
> > the createlang command to add tcl and python, with similar results.
>
> Hmm.  libtcl and libpython are normally installed in sane locations, so
> whatever their problem is is something different.  Again, ldd would be
> informative.
>
>             regards, tom lane


pgsql-general by date:

Previous
From: Data Growth Pty Ltd
Date:
Subject: Could not read directory "pg_xlog": Invalid argument (on SSD Raid)
Next
From: Wojtek
Date:
Subject: Re: --//pgsql partitioning-///--------------------