From: Noel O'B. <bao...@gm...> - 2006-12-17 21:39:17
|
Same happens to me but it runs fine for me (i.e. does nothing) with the following random changes: (1) Add System.loadLibrary("openbabel"); (2) export LD_LIBRARY_PATH=$PWD:/usr/local/lib Not sure whether 1 or 2 did the magic. BTW, I find the presence of two completely different libopenbabel.so's very confusing - can we rename one to libopenbabel-java.so? On 17/12/06, richard apodaca <ric...@ya...> wrote: > > --- Geoffrey Hutchison <ge...@ge...> > wrote: > > > > > On Dec 16, 2006, at 7:02 PM, richard apodaca wrote: > > > > > 32 compile errors resulting from the 5 classes > > listed > > > below not being found, it should not be a lot of > > > effort to get it working. > > > > No more compile errors, I promise. I added a first > > stab at a README, > > but I can only vouch that it works on Mac OS X. > > Using revision SVN trunk 1678. > > Excellent. I went through the steps in the README. I > needed to modify Step 2 because of the way the Linux > AMD64 JDK is laid out: > > (2) g++ -c -fpic openbabel_java.cpp -I../../include > -I/usr/java/jdk1.5.0_09/include/ > -I/usr/java/jdk1.5.0_09/include/linux > > > >> I've tried to follow the README in scripts/java > > but > > >> step 3 gave: > > >> g++: libopenbabel.so: No such file or directory > > > > Sorry, that should have been something like: > > > > g++ -shared -lopenbabel -L/usr/local/lib > > openbabel_java.o -o > > libopenbabel.so > > I used the command above and it produced > libopenbabel.so. I checked and /usr/local/lib on my > system contains libopenbabel.so > > So far so good. > > I wrote a little test class (saved as OBTest.java in > the scripts/java directory): > > public class OBTest > { > public OBTest() > { > > } > > public void run() > { > OBConversion c = new OBConversion(); > } > > public static void main(String[] args) > { > System.out.println("Running OBTest..."); > > OBTest test = new OBTest(); > > test.run(); > } > } > > Compiling: > > javac OBTest.java > > worked fine. > > As far as I gather, I need to set LD_LIBRARY_PATH to > the directory containing libopenbabel.so: > > export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD > > But running the test produces an UnsatisfiedLinkError: > > $ java OBTest > Running OBTest... > Exception in thread "main" > java.lang.UnsatisfiedLinkError: > new_OBConversion__SWIG_2 > at openbabelJNI.new_OBConversion__SWIG_2(Native > Method) > at OBConversion.<init>(OBConversion.java:44) > at OBTest.run(OBTest.java:10) > at OBTest.main(OBTest.java:19) > > I'm inexperienced with using JNI, so I'm probably > doing something wrong. > > To summarize: I'm able to compile the Open Babel JNI > wrapper and create the shared library. However, > running a simple test class that uses the library > gives an UnsatisfiedLinkError. > > Can someone try to run this test class (or another > one) to see if the problem is my system/methods? > > cheers, > Rich > > ____________________________ > Richard Apodaca > Blog: http://depth-first.com > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > OpenBabel-scripting mailing list > Ope...@li... > https://lists.sourceforge.net/lists/listinfo/openbabel-scripting > |