mercredi, mai 22, 2013

Faire tourner une JVM Java 32 bits sur Linux 64 bits (Ubuntu 13.04)

Dans le cadre de tests en cours pour la migration automatique vers Java des travaux batch (en Cobol) d'un client, nous devons installer l'ordonnanceur Control/M de BMC sur Linux 13.04.

Le produit Control/M vient avec un installeur embarquant sa propre JVM version 6 en 32 bits. Il n'est pas possible de le débrayer pour utiliser la JVM native de la machine cible.

Donc, il faut faire tourner la JVM 32 bits embarquée sur un Linux 64 bits !

A priori, quand on lance la JVM via path/java -version, on obtient le message d'erreur "no such file or directory" alors que le fichier est bien présent et que les permissions nécessaires (i.e "read" et "execute") sont en place.

Pour régler le problème, il faut installer le package général de compatibilité entre les modes 32 et 64 bits d'Ubuntu qui s'appelle ia32-libs.

Donc, un "sudo apt-get install ia32-libs" et le Java 32 bits donc l'installeur Control/M fonctionne sur Linux 64 bits.

Update: pour régler le même problème sur Linux CentOS 6 (la version communautaire strictement compatible RedHat), il faut faire 'sudo yum install libstdc++.i686'


Source: blog Media and Tech (par didier durand)

Aucun commentaire: