Bonsoir,
J'ai un petit soucis ( enfin pour moi çà en devient un énorme..... apres 12 heure d'affilées dessus je commence à me sentir mal......).
Je tente désespérément de faire une library native C dynamique avec JN sous linux (Fedora 8 ):
tout se passe plutot bien de la génération de mon .h jusqu'à la génération de .so
Cependant lorsque je lance une classe test,ne faisant qu'invoquer une instance de la classe contenant la déclaration des fonctions native C, je me chope l'erreur suivante :
la classe CurlGlue est ici la classe contenant les méthodes natives....Exception in thread "main" java.lang.UnsatisfiedLinkError: curl.CurlGlue.jni_init()I
at curl.CurlGlue.jni_init(Native Method)
at curl.CurlGlue.<init>(CurlGlue.java:157)
at MainClass.main(MainClass.java:6)
La main class contient une méthode statique essayant d'instancier un objet CurlGlue ...
Je ne comprends vraiment pas ce qui se passe ......
Un Vraiment GRAND MERCI à tous ceux qui auront un petit indice (si minuscule soit il ...)
MErci
P.S :
ma dernière ligne de commande pour générer le .so est :
gcc -shared -o curljava.so curljava.o /usr/lib/libcurl.so
L'erreur semble signifier que la jvm ne trouve la bonne définition native de jni_init() ...
Partager