[Pljava-dev] undefined symbol: JNI_CreateJavaVM on installing pljava-1.3.0 on Postgresql8.3

From: johann at myrkraverk(dot)com (Johann 'Myrkraverk' Oskarsson)
To:
Subject: [Pljava-dev] undefined symbol: JNI_CreateJavaVM on installing pljava-1.3.0 on Postgresql8.3
Date: 2010-11-19 12:15:07
Message-ID: AANLkTinrC1nDLPZh82Fny0uOPennOk3+AhB0MpzanXFM@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pljava-dev

Hi,

On Fri, Nov 19, 2010 at 6:31 AM, Sandeep Thakkar <sandeeptt at yahoo.com> wrote:
> My environment settings are:
> JAVA_HOME=<installation_dir>/jre
> LD_LIBRARY_PATH=<installation_dir>/jre/lib/amd64:<installation_dir>/jre/lib/amd64/native_threads:<installation_dir>/jre/lib/amd64/server:$LD_LIBRARY_PATH
>
> then I restart the dbserver and I install pljava. and I get the same error.

Just because your environment settings include the right
LD_LIBRARY_PATH does not mean the server's does. In ubuntu (my setup)
I have to put the variables in /etc/postgresql/8.4/main/environment.

You can also try to build pljava.so with the paths built-in by using
the -rpath flag. Again, I'm a bit hazy on how to do it but I think
you can just add LDFLAGS='-rpath <installation_dir>/jre/lib/amd64
-rpath <installation_dir>/jre/lib/amd64/native_threads -rpath
<installation_dir>/jre/lib/amd64/server' before invoking ./configure?
This assumes GCC. With the sunstudio compiler use -R instead.

> another interesting thing is that 'ldd pljava.so' does not show the
> dependency on libjvm.so.
> $ ldd lib/pljava.so
> ??? libc.so.6 => /lib64/libc.so.6 (0x00002ac7d831d000)
> ??? /lib64/ld-linux-x86-64.so.2 (0x0000003b7f800000)

That just means the virtual machine is loaded with dlopen(). The last
time I did this in my own code, I was using OpenVMS so I'm a bit hazy
on the Unix details.

Johann

In response to

Browse pljava-dev by date

  From Date Subject
Next Message Chantralekha Anandh kumar 2010-12-03 11:50:21 [Pljava-dev] Java VM stalls during "install_jar"
Previous Message Sandeep Thakkar 2010-11-19 06:31:07 [Pljava-dev] undefined symbol: JNI_CreateJavaVM on installing pljava-1.3.0 on Postgresql8.3