[Pljava-dev] Windows binaries

From: eric(dot)kolotyluk at gmail(dot)com (Eric Kolotyluk)
To:
Subject: [Pljava-dev] Windows binaries
Date: 2011-01-24 18:13:10
Message-ID: 4D3DC136.8010709@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pljava-dev

On 2011-01-24 9:37 AM, Johann 'Myrkraverk' Oskarsson wrote:
> On Mon, 24 Jan 2011 17:20:58 -0000, Eric Kolotyluk
> <eric.kolotyluk at gmail.com> wrote:
>
>> I installed Dependency Walker to look at the pljava.dll file. It
>> complained that it could not find jvm.dll, msvcr71.dll, and
>> msvcr90.dll - so I put them all in the postgres lib directory where
>> pljava.dll is. That problem went away.
>>
>> However, Dependency Walker is still complaining about
>>
>> Error: At least one module has an unresolved import due to a missing
>> export function in an implicitly dependent module.
>> Error: Modules with different CPU types were found.
>> Warning: At least one module has an unresolved import due to a
>> missing export function in a delay-load dependent module.
>
> Can you check that the DLLs you copied are all 64 bits? Also, the JVM
> (on Unix) needs more DLLs, here is an output I posted previously to
> this list, for Solaris:

Dependency Walker reports that jvm.dll, msvcr71.dll, and msvcr90.dll are
all x86 - as is pljava.dll and all the other postgres DLLs. Why would
the DLLs need to be 64-bit?

I am using Java 6.

I have copied hpi.dll, verify.dll, java.dll, and zip.dll to the lib
directory. I could not find dbx_agent.dll

>
> /export/home/johann/src/external/pljava-head/build/objs/pljava.so
> /opt/myrkraverk/jdk1.5.0_22/jre/lib/amd64/server/libjvm.so
>
> <snip>
>
> /opt/myrkraverk/jdk1.5.0_22/jre/lib/amd64/native_threads/libhpi.so
> /opt/myrkraverk/solstudio12.2/lib/dbx/amd64/runtime/libdbx_agent.so
> /opt/myrkraverk/jdk1.5.0_22/jre/lib/amd64/libverify.so
> /opt/myrkraverk/jdk1.5.0_22/jre/lib/amd64/libjava.so
> /opt/myrkraverk/jdk1.5.0_22/jre/lib/amd64/libzip.so
>
> Notes:
>
> You don't need to run PL/Java with Java 5, it works equally well with
> a Java 6 VM. The libdbx_agent is only for debugging PL/Java code with
> dbx, and is not applicable for Windows.
>
>> Is this a problem because I am running on a 64-bit version of Windows 7?
>
> It shouldn't be, but it seems your walker is finding a 32bit DLL where
> it expects a 64bit DLL.

Again, why would it expect 64 bit DLLs when I am running 32-bit postgres
and 32-bit Java?

However, Dependency Walker is listing a lot of other 64-bit DLLs for
some reason.

>
>> When I try to run install.sql I still get
>> psql:install.sql:6: ERROR: could not load library "C:/Program Files
>> (x86)/PostgresPlus/9.0SS/lib/pljava.dll": The specified module could
>> not be found.
>
> This is an unfortunate message. In Linux it tells me which (sub) DLL
> is missing such as "libjvm.so could not be found."
>
jvm.dll is in the same directory as pljava.dll. At first it was not and
Dependency Walker complained it was missing, so I added it and
Dependency Walker stopped complaining.

Cheers, Eric

In response to

Responses

Browse pljava-dev by date

  From Date Subject
Next Message Johann 'Myrkraverk' Oskarsson 2011-01-24 18:23:39 [Pljava-dev] Windows binaries
Previous Message Johann 'Myrkraverk' Oskarsson 2011-01-24 17:37:25 [Pljava-dev] Windows binaries