Tout d'abord, il se peut que cette question soit celle d'un novice pour vous tous. Mais comme on dit, si vous ne demandez pas, comment allez-vous apprendre ?
Donc, voilà le truc :
Nous avons développé ce fichier .JAR pour qu'il fonctionne sous Java 1.4 et qu'il soit installé dans SUSE 9 Enterprise Server.
Nous l'avons également testé sur différentes plateformes : - Suse 9 Enterprise Server 32 bits + JDK 1.4.2_08 + LIBSTDC++.SO.6 : Fonctionne sans problème, aucune erreur n'est retournée.
-
Serveur Red Hat 5.5 64 bits + JDK 1.4 : Fonctionne sans problème, aucune erreur n'est renvoyée.
-
Suse 9 Enterprise Server 64 bits + JDK 1.4.2_08 (32 bits) + LIBSTDC++.SO.6 : Si j'utilise le 32 des bibliothèques de bits de mon programme, il renvoie une erreur disant : "Exception in thread "main" java.lang.UnsatisfiedLinkError : /usr/lib/MySharedLibrary.so : /usr/lib/MySharedLibrary.so : undefined symbol : NFQuality"
MAIS si j'utilise le 64 des bibliothèques de bits de mon programme, il renvoie cette erreur : "Exception in thread "main" java.lang.UnsatisfiedLinkError : /usr/lib64/MySharedLibrary64.so : /usr/lib64/MySharedLibrary64.so : cannot open shared object file : No such file or directory
J'ai essayé de donner la commande java -Djava.library.path avec le chemin où se trouve MySharedLibrary, mais cela n'a pas fonctionné.
Ma question est la suivante :
POURQUOI renverrait-il une erreur dans Suse 9 64 bits, s'il a exactement la même configuration que Suse 9 32 bits ?
Je comprends qu'il y a une différence entre les architectures, d'accord. Mais ce n'est pas une question de compilation d'architecture, puisque dans RedHat 5.5 avec 64 bits, il fonctionne.
Quelqu'un peut-il me guider dans cette énigme ? Quelles sont mes solutions possibles ?
Merci à tous les gourous qui sont là.