comment je charge deux librairies partagées
Bonjour tous le monde,
Je veux utiliser JNA pour faire mon wrapper java,
Pour faire ceci, il faut chargé la librairie partagée que j'ai généré quand j'ai compilé mon code C, 'libMy-lib1.so'.
Voici mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
import com.sun.jna.Library;
import com.sun.jna.Native;
import com.sun.jna.Platform;
import com.sun.jna.Pointer;
public class Test {
public interface CLibrary extends Library {
CLibrary INSTANCE = (CLibrary) Native.loadLibrary(("My-lib1"), CLibrary.class);
void Example (String fname , int max_size);
}
public static void main(String[] args) {
String a ="";
int b=0;
CLibrary.INSTANCE.Example(a,b);
}
} |
mais si je compile ce code voici le message d'ereur qui sera affiché:
Code:
1 2 3 4 5 6 7 8 9
|
Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'My-lib1': libMy-lib1.so: undefined symbol: WFile
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:127)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:170)
at com.sun.jna.Library$Handler.<init>(Library.java:123)
at com.sun.jna.Native.loadLibrary(Native.java:255)
at com.sun.jna.Native.loadLibrary(Native.java:241)
at My-lib1s$CLibrary.<clinit>(Test.java:34)
at My-lib1.main(Test.java:86) |
Je pense que j'ai besoin aussi de charger une autre librairie, càd charger "My-lib1" et "My-lib2"
Svp, quelqu'un a une idéé sur comment faire pour que je puisse travaillé avec les deux librairies?
Merci d'avance.