octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Need test of patch for OS X


From: John W. Eaton
Subject: Re: Need test of patch for OS X
Date: Tue, 10 May 2016 15:27:15 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Icedove/38.5.0

On 05/10/2016 03:00 PM, Ben Abbott wrote:

I don’t think there is a standard JVM install for Mac OS X. Perhaps that is why 
OS X is handled differently?

I don't think there is a standard JVM install for anything. Except maybe Windows? But I'm not sure.

Even so, I’d prefer that everything depend upon JAVA_HOME at run time. That 
would make it much simpler to tweak things and get Octave+Java to play nice 
with Mac OS X.

That's what I'm trying to do and on other systems we are pretty close to that already. We are doing something like this (omitting casts and some other details):

  octave_shlib lib (jvm_lib_path);

  create_vm_fptr_t create_vm_fcn = lib.search ("JNI_CreateJavaVM");
  get_vm_fptr_t get_vm = lib.search ("JNI_GetCreatedJavaVMs");

and then using those pointers to call the initialization function. Octave is NOT linked with the JVM. We just load it as needed. The only thing is that we are hard-coding the location of the JVM shared library at configure time. That needs to be fixed.

But for whatever reason, on OS X we ARE linking Octave with the JVM and calling JNI_GetCreatedJavaVMs and JNI_CreateJavaVM directly. I don't want to do that and I think we should be able to handle this the same on all systems.

So, loading it doesn't work but linking with it does? If you build without the patch I sent, do the tests in ov-java.cc pass?

jwe




reply via email to

[Prev in Thread] Current Thread [Next in Thread]