How to install step by step Med library as a standalone library
How to install step by step Med library as a standalone library


Bonjour,
Je souhaite réaliser un code de calcul FEM écrit en python, pour cela je voudrais utiliser la librairie MED de Salome afin d'importer, gérer des maillages de différents format.
Pour récupérer cette librairie j'ai télécharger les sources de salome 6.5.0 j'ai ensuite effectué les commandes suivantes dans mon terminal (ubuntu) :
cd ~/Documents/src6.5.0/MED_SRC_6.5.0
./configure --without-kernel --prefix=/home/lopez/Developpement/EFEMS/modules/MED_BUILD_6.5.0
Mais il me dit que med3 n'est pas installer pourtant j'ai l'impression que c'est bien le cas au vu des paquets que j'ai installer.
Je vous joint le fichier config.log
Pouvez-vous m'aidez ? Merci
--------------------------------------------------------------------------------------------------------------
Hello,
I want to make FEM code written in python, that I would like to use the MED library of Salome to import, manage meshes of different format.
To get this library I download the source salome 6.5.0 I then performed the following commands in my terminal (ubuntu):
cd ~/Documents/src6.5.0/MED_SRC_6.5.0
./configure --without-kernel --prefix=/home/lopez/Developpement/EFEMS/modules/MED_BUILD_6.5.0
But he told me that MED3 is not installed yet I feel that this is the case in view of the packages I installed.
I attached the config.log
Can you help me ? Thanks
Re: How to install step by step Med library as a standalone library

Ci-joint la sortie que j'obtiens sur mon terminal.
--------------------------------------------------------------------------
Attached is the output I get on my terminal.
Re: How to install step by step Med library as a standalone library

Bonjour,
Le configure ne trouve ni mdump ni med.h: il te manque un paquet.
As-tu le paquet libmedc-dev installé ?
Gilles
Re: How to install step by step Med library as a standalone library

Bonjour,
Je viens de l'installer ainsi que libmedtool mais cela ne change rien il ne trouve toujours pas med3. De plus, l'installation de ces paquets supprime automatiquement hdf5...
Je suis vraiment désespéré j'ai passé 7h à essayer de résoudre le soucis sans succès :s.
Ci-joint le fichier contenant ma sortie sur mon terminal puis en deuxième partie du fichier le contenu de config.log. (Je n'arrive pas a joindre deux fichiers :s)
Jocelyn
Re: How to install step by step Med library as a standalone library

Bonjour,
Je viens de l'installer ainsi que libmedtool mais cela ne change rien il ne trouve toujours pas med3. De plus, l'installation de ces paquets supprime automatiquement hdf5...
Je suis vraiment désespéré j'ai passé 7h à essayer de résoudre le soucis sans succès :s.
Ci-joint le fichier contenant ma sortie sur mon terminal puis en deuxième partie du fichier le contenu de config.log. (Je n'arrive pas a joindre deux fichiers :s)
Jocelyn
Previously DAVID Gilles wrote:
Bonjour,
Le configure ne trouve ni mdump ni med.h: il te manque un paquet.
As-tu le paquet libmedc-dev installé ?
Gilles
Re: How to install step by step Med library as a standalone library

"De plus, l'installation de ces paquets supprime automatiquement hdf5..."
Je ne comprends pas bien: si tu installes libmed-dev, le paquet libhdf5 ne doitpas être supprimé puisque c'est une dépendance.
Ou alors c'est une mise à jour du paquet ?
D'après le log, effectivement la librairie hdf5 n'est pas trouvée: il te faut le paquet libhdf5-dev
.
As-tu essayé la ligne suivante :
sudo apt-get install libhdf5-dev libmedc-dev libmed-dev
Previously negetem wrote:
Bonjour,
Je viens de l'installer ainsi que libmedtool mais cela ne change rien il ne trouve toujours pas med3. De plus, l'installation de ces paquets supprime automatiquement hdf5...
Je suis vraiment désespéré j'ai passé 7h à essayer de résoudre le soucis sans succès :s.
Ci-joint le fichier contenant ma sortie sur mon terminal puis en deuxième partie du fichier le contenu de config.log. (Je n'arrive pas a joindre deux fichiers :s)
Jocelyn
Previously DAVID Gilles wrote:
Bonjour,
Le configure ne trouve ni mdump ni med.h: il te manque un paquet.
As-tu le paquet libmedc-dev installé ?
Gilles
Re: How to install step by step Med library as a standalone library

Quand je passe par synaptic il me dit clairement que si j'installe libmed alors il doit supprimer hdf5...
Voici le retour des deux commandes :
lopez@kracote:~$ sudo apt-get install libhdf5-dev libmedc-dev libmed-dev
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Le paquet libhdf5-dev est un paquet virtuel fourni par :
libhdf5-serial-dev 1.8.4-patch1-3ubuntu2
libhdf5-openmpi-dev 1.8.4-patch1-3ubuntu2
libhdf5-mpich-dev 1.8.4-patch1-3ubuntu2
libhdf5-lam-dev 1.8.4-patch1-3ubuntu2
Vous devez explicitement sélectionner un paquet à installer.
E: Le paquet « libhdf5-dev » n'a pas de version susceptible d'être installée
----------------------------------------------------------------------------------------------------------------------
lopez@kracote:~$ sudo apt-get install libhdf5-serial-dev libmedc-dev libmed-dev
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
libmedc-dev est déjà la plus récente version disponible.
Certains paquets ne peuvent être installés. Ceci peut signifier
que vous avez demandé l'impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n'ont pas encore
été créés ou ne sont pas sortis d'Incoming.
L'information suivante devrait vous aider à résoudre la situation :
Les paquets suivants contiennent des dépendances non satisfaites :
libhdf5-openmpi-dev : Est en conflit avec: libhdf5-dev
libhdf5-serial-dev : Dépend: libhdf5-serial-1.8.4 (= 1.8.4-patch1-3ubuntu2) mais ne sera pas installé
Est en conflit avec: libhdf5-dev
E: Erreur, pkgProblemResolver::Resolve a généré des ruptures, ce qui a pu être causé par les paquets devant être gardés en l'état.
Je suis sur ubuntu 12.04 LTS, ce qui est étrange c'est que même si je vais abstraction du fait que quand j'installe libmed cela supprime hdf5, il n'est quand même pas détecté par configure... :s
Re: How to install step by step Med library as a standalone library

libmedc-dev tire les paquets libmedc1 et libhdf5-mpi-dev
libmedc1 tire le paquet libhdf5-openmpi-1.8.4
libhdf5-mpi-dev tire le paquet libhdf5-openmpi-dev
libhdf5-dev est un paquet virtuel récupéré par libhdf5-openmpi-dev qui pose problème dans ton cas.
Essaie de l'enlever, il n'est pas utile, puis retente l'installation des paquets libmedc-dev et libmed-dev
Re: How to install step by step Med library as a standalone library

J'ai supprimer tout les paquets commençant par libhdf5 puis j'ai installer libmedc-dev et libmed-dev. Mais cela ne change rien, j'ai toujours hdf5 et med3 qui ne sont pas trouvé. Il n'y a pas moyen de récupérer ceux de salome avec l'option --with-med3 de configure ?
Ci-joint les deux sortie
Re: How to install step by step Med library as a standalone library

OK la macro check_med3.m4 cherche la présence de mdump qui est fourni par le paquet libmed-tools, il faut donc l'installer.
Pour hdf5, peux-tu me lister les paquets installés après avoir installé tous les paquets de la librairie med (libmedc-dev, libmed-dev et libmed-tools) ?
Re: How to install step by step Med library as a standalone library

J'ai installer libmed-tools (précédement libmedc-dev et libmed-dev), j'ai alors les librairies hdf5 suivantes d'installé :
libhdf5-mpi-dev
libhdf5-openmpi-1.8.4
libhdf5-openmpi-dev
Pour ce qui est de configure toujours la même histoire, hdf5 et med3 manquant.
J'ai testé les options, j'ai installer salome avec les binaires "salomexxx.run" puis je rajoute les différentes options à configure :
--with-metis=/home/lopez/salome/Salome-V6_5_0p1-LGPL-x86_64/prerequisites/Metis_40
--with-hdf5=/home/lopez/salome/Salome-V6_5_0p1-LGPL-x86_64/prerequisites/Hdf5_188
...etc
Dans ce cas, configure reconnais bien les bibliothèques Metis, HDF5, Scotch...etc. mais il n'y a pas de dossier Med dans prerequisites. J'en est trouvé dans modules et tools :
--with-med3=/home/lopez/salome/Salome-V6_5_0p1-LGPL-x86_64/modules/MED_V6_5_0p1
--with-med3=/home/lopez/salome/Salome-V6_5_0p1-LGPL-x86_64/tools/Medfichier_305
Mais il ne détecte toujours pas med3
Jocelyn
Re: How to install step by step Med library as a standalone library

Le med3 est celui du répertoire tools.
Essaie de définir la variable d'environnement MED3HOME à /home/lopez/salome/Salome-V6_5_0p1-LGPL-x86_64/tools/Medfichier_305 avant le configure (en plus des options --with-metis et --with-hdf5)
export MED3HOME=/home/lopez/salome/Salome-V6_5_0p1-LGPL-x86_64/tools/Medfichier_305
Re: How to install step by step Med library as a standalone library

le problème persiste mais cette fois-ci apparemment il a réussi à trouver le fichier med.h mais il me dit que la bibliothèque med3 n'a toujours pas été trouvé. Ci-joint la sortie de mon terminal.
Re: How to install step by step Med library as a standalone library

Re: How to install step by step Med library as a standalone library

Question bête: Il faut sourcer le fichier d'environnement salome_prerequisites_V6_5_0_appli.sh avant le configure, l'as-tu fait ?
(Remarque: il y a 2 fichiers salome_prerequisites_xxx.sh, celui qui contient "_appli" a les chemins de l'installation en dur écrits dedans. C'est celui à utiliser pour avoir un environnement correct)
Re: How to install step by step Med library as a standalone library

Désolé, j'avais oublié. Ce fichier config.log correspond à l'utilisation de --with-med3 pas l'export. Mais je viens de voir qu'il font exactement la même chose. med.h est trouvé mais pas la librairie.
Re: How to install step by step Med library as a standalone library

Remarque 2: les lignes du fichier d'environnement qui t'intéressent sont celles qui concernent l'initialisation de PREREQUISITES_ROOT_DIR et TOOLS_ROOT_DIR, hdf5 et med fichier:
export PREREQUISITES_ROOT_DIR=XXX
export TOOLS_ROOT_DIR=YYY
#------ hdf5 ------
export HDF5HOME=${PREREQUISITES_ROOT_DIR}/Hdf5_188
export PATH=${HDF5HOME}/bin:$PATH
export LD_LIBRARY_PATH=${HDF5HOME}/lib:${LD_LIBRARY_PATH}
export HDF5_DISABLE_VERSION_CHECK=1
#------ med fichier ------
export MED2HOME=${TOOLS_ROOT_DIR}/Medfichier_305
export PATH=${MED2HOME}/bin:${PATH}
export LD_LIBRARY_PATH=${MED2HOME}/lib:${LD_LIBRARY_PATH}
Re: How to install step by step Med library as a standalone library

J'ai executé :
./build_configure --without-kernel
export PREREQUISITES_ROOT_DIR=/home/lopez/salome/Salome-V6_5_0p1-LGPL-x86_64/prerequisites/
export TOOLS_ROOT_DIR=/home/lopez/salome/Salome-V6_5_0p1-LGPL-x86_64/tools/
#------ hdf5 ------
export HDF5HOME=${PREREQUISITES_ROOT_DIR}/Hdf5_188
export PATH=${HDF5HOME}/bin:$PATH
export LD_LIBRARY_PATH=${HDF5HOME}/lib:${LD_LIBRARY_PATH}
export HDF5_DISABLE_VERSION_CHECK=1
#------ med fichier ------
export MED2HOME=${TOOLS_ROOT_DIR}/Medfichier_305
export PATH=${MED2HOME}/bin:${PATH}
export LD_LIBRARY_PATH=${MED2HOME}/lib:${LD_LIBRARY_PATH}
./configure --prefix=/home/lopez/Developpement/EFEMS/modules/MED_BUILD_6.5.0
Malheureusement, toujours aucun changement a priori...
Re: How to install step by step Med library as a standalone library

Peux-tu modifier la macro MED_SRC/adm_linux.unix/config_files/check_med3.m4 à la ligne 52:
LOCAL_LIBS="-lmed -lmedimport $HDF5_LIBS"
par
LOCAL_LIBS="-lmed -lmedmem -lmedimport $HDF5_LIBS"
et refaire le configure.
Re: How to install step by step Med library as a standalone library

Re: How to install step by step Med library as a standalone library

Une autre idée: as-tu gfortran d'installé ? Si non, installe-le (sudo apt-get install gfortran) et ressaie le configure.
Re: How to install step by step Med library as a standalone library

Je n'est pas ton dossier adm_linux mais à la place adm_local, cf chemin ci-dessous :
/home/lopez/Documents/src6.5.0/MED_SRC_6.5.0/adm_local/unix/config_files/check_med3.m4
J'ai tout de même effectué ta modif sur le fichier ci-dessus. Malheureusement, toujours sans effet à priori.
Re: How to install step by step Med library as a standalone library

Re: How to install step by step Med library as a standalone library

Re: How to install step by step Med library as a standalone library

OK j'ai compris: il te faut g2c et donc f77 et non pas gfortran.
La raison: cette version de Salome est compilée sur une Debian Etch avec f77 comme compilateur fortran. La librairie libmed.so de MedFichier est linkée sur libg2c.so.0 qui n'est pas trouvée sur ton système.