S
Sylvihasi
Grünschnabel
Hallo,
ich versuche derzeit ein auf Windows geschriebenes Java Native Interface (JNI) Projekt (1Jar, 2DLL's) auf Solaris zu portieren.
Mein Jar-File funktioniert einwandfrei.
Eine dll wurde von einem ehemaligen Kollegen als normlib.a auf Solaris portiert.
Ich habe nun ein weiteres c++ File geschrieben, welches die JNI-Funktionalität beinhaltet und zusätzlich die schon vorhandene (auf Win die normlib.dll ) normlib.a als Library verwendt.
Auf Windows funktioniert dies auch einwandfrei.
Nur auf Solaris...
Ich habe mein c++ File zu einem lib.so umgewandelt (aber weis nicht ob alles richtig eingebunden ist).
Wenn ich nun mein Jar-File aufrufe kommt ein
java.lang.UnsatisfiedLinkError: no lib in java.library.path
at java.lang.ClassLoader.loadLibrary
...
Daher ich glaube das ich einfach einen Path nicht richtig gesetzt habe und er das so-File in einem ganz anderen Verzeichnis als dem aktuellen sucht.
--> Was muss ich denn alles gesetzt haben ? PATH,... ?
Oder das die Compilierung meiner c++ Sourcen nicht stimmte.
--> pwd: /usr/sfw/bin
./g++ /Sylvi/scr/norm.cpp -I /Sylvi/src/include -L /Sylvi/src/library
-G -o lib.so
(im src : norm.cpp | im src/include: jni.h, jni_md.h, norm.h |
im src/library: normlib.a)
Ich brauche dringend Hilfe !!!
Danke Sylvi
ich versuche derzeit ein auf Windows geschriebenes Java Native Interface (JNI) Projekt (1Jar, 2DLL's) auf Solaris zu portieren.
Mein Jar-File funktioniert einwandfrei.
Eine dll wurde von einem ehemaligen Kollegen als normlib.a auf Solaris portiert.
Ich habe nun ein weiteres c++ File geschrieben, welches die JNI-Funktionalität beinhaltet und zusätzlich die schon vorhandene (auf Win die normlib.dll ) normlib.a als Library verwendt.
Auf Windows funktioniert dies auch einwandfrei.
Nur auf Solaris...
Ich habe mein c++ File zu einem lib.so umgewandelt (aber weis nicht ob alles richtig eingebunden ist).
Wenn ich nun mein Jar-File aufrufe kommt ein
java.lang.UnsatisfiedLinkError: no lib in java.library.path
at java.lang.ClassLoader.loadLibrary
...
Daher ich glaube das ich einfach einen Path nicht richtig gesetzt habe und er das so-File in einem ganz anderen Verzeichnis als dem aktuellen sucht.
--> Was muss ich denn alles gesetzt haben ? PATH,... ?
Oder das die Compilierung meiner c++ Sourcen nicht stimmte.
--> pwd: /usr/sfw/bin
./g++ /Sylvi/scr/norm.cpp -I /Sylvi/src/include -L /Sylvi/src/library
-G -o lib.so
(im src : norm.cpp | im src/include: jni.h, jni_md.h, norm.h |
im src/library: normlib.a)
Ich brauche dringend Hilfe !!!
Danke Sylvi