By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
438,834 Members | 2,240 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 438,834 IT Pros & Developers. It's quick & easy.

plperl/createlang issue

P: n/a
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
---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Nov 12 '05 #1
Share this Question
Share on Google+
4 Replies


P: n/a


--On Tuesday, November 11, 2003 19:22:50 -0700 "Ed L."
<pg***@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: le*@lerctr.org
US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQE/sZplrRNGhTxJvdYRAgmYAJ9uPd3he7bibZYeDpKyP7bK+8D2Zw CgmMoY
ewFUuonLr+agPLeQt2cbMaE=
=2ELu
-----END PGP SIGNATURE-----

Nov 12 '05 #2

P: n/a
"Ed L." <pg***@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

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to ma*******@postgresql.org)

Nov 12 '05 #3

P: n/a
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".

---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Nov 12 '05 #4

P: n/a
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


---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
joining column's datatypes do not match

Nov 12 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.