Hi,

The INSTALL doc states that the FastBit JNI library must be installed in 
"/usr/local/lib." I think that's based on the assumption that the Java 
installation uses that path as the default value for the system property 
"java.library.path." The path is actually different on a different 
architecture, such as Mac OS X, that has the "java.library.path" property set 
to other paths. This is made slightly more complicated by the fact that under 
Ant properties are immutable and that property is set when the VM is launched.

To get around it, I made a few modifications to the build.xml file. First, it 
reads properties from a build.properties file (a standard Ant practice):

  <property file="build.properties" />

The build.properties can be generated at compile-time. The file contains an 
arbitrarily-named argument, say:

fastbit.library.path=${HOME}/lib # Or ${PREFIX}/lib from configure

Then, the following argument is set at the forked process (e.g., java, junit):

      <jvmarg value="-Djava.library.path=${fastbit.library.path}"/>

Running the unit tests (target: test) succeeds.

Is this a viable solution for the JNI path problem or are there other reasons 
for installing the fastbitjni libraries in /usr/local/lib?

Cheers,
Shiran
_______________________________________________
FastBit-users mailing list
[email protected]
https://hpcrdm.lbl.gov/cgi-bin/mailman/listinfo/fastbit-users

Reply via email to