38,760
edits
No edit summary |
(Updating to match new version of source page) |
||
Line 33: | Line 33: | ||
Le chargement du module d'une bibliothèque configure les variables d'environnement <tt>CPATH</tt> et <tt>LIBRARY_PATH</tt> pour qu'elles pointent sur la bibliothèque elle-même et ses fichiers d’en-tête (voir [[Utiliser des modules]]). La plupart des compilateurs, dont [https://software.intel.com/en-us/node/522775 Intel] et [https://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html GCC] peuvent traiter ces variables; aux étapes de compilation et de construction des liens, les compilateurs iront automatiquement aux bibliothèques indiquées par les variables d'environnement. | Le chargement du module d'une bibliothèque configure les variables d'environnement <tt>CPATH</tt> et <tt>LIBRARY_PATH</tt> pour qu'elles pointent sur la bibliothèque elle-même et ses fichiers d’en-tête (voir [[Utiliser des modules]]). La plupart des compilateurs, dont [https://software.intel.com/en-us/node/522775 Intel] et [https://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html GCC] peuvent traiter ces variables; aux étapes de compilation et de construction des liens, les compilateurs iront automatiquement aux bibliothèques indiquées par les variables d'environnement. | ||
Ceci permet de facilement établir un lien avec une bibliothèque sans devoir en indiquer le chemin avec les options <tt>-I</tt> et <tt>-L</tt>. Si votre fichier ''make''- ou ''config-'' demande l'endroit spécifique où se trouve la bibliothèque avec <tt>-I</tt> et <tt>-L</tt>, vous pouvez habituellement omettre d’indiquer le chemin en laissant les lignes vides. | Ceci permet de facilement établir un lien avec une bibliothèque sans devoir en indiquer le chemin avec les options <tt>-I</tt> et <tt>-L</tt>. Si votre fichier ''make''- ou ''config-'' demande l'endroit spécifique où se trouve la bibliothèque avec <tt>-I</tt> et <tt>-L</tt>, vous pouvez habituellement omettre d’indiquer le chemin en laissant les lignes vides. | ||
In some cases, however, particularly with <tt>cmake</tt>, it may be necessary to specify explicitly the location of the library provided by the modulefile. The preferred and the most robust way to do so is to use an EasyBuild environment variable, <tt>EBROOT...</tt>, instead of manually typing a path. This will allow you to switch easily between toolchains without modifying the compilation instructions, and will also reduce the risk of linking a mismatched library. For example, if you need to specify the location of the GSL library, the option you provide to <tt>cmake</tt> might look like <tt>-DGSL_DIR=$EBROOTGSL</tt>. The <tt>EBROOT...</tt> environment variables adhere to the same construction pattern: <tt>EBROOT</tt> followed by the name of the package, for example <tt>EBROOTGCC</tt>. | |||
== BLAS/LAPACK et MKL == | == BLAS/LAPACK et MKL == | ||
Line 45: | Line 47: | ||
==Installer des paquets binaires== | ==Installer des paquets binaires== | ||
L'installation de binaires précompilés (tels que [https://conda.io/miniconda.html Miniconda]) dans votre espace home pourrait générer une erreur comme <code>/lib64/libc.so.6: version `GLIBC_2.18' not found</code>. Le script <code>setrpaths.sh</code> peut souvent éliminer ce problème avec la syntaxe <code>setrpaths.sh --path path [--add_origin]</code> où ''path'' représente le répertoire dans lequel vous avez installé le logiciel. Le script fait en sorte que les binaires utilisent le bon interpréteur et trouvent les bibliothèque auxquelles ils sont dynamiquement liés, dans le bon répertoire. L'option <code>--add_origin</code> ajoute aussi $ORIGIN au RUNPATH, ce qui peut s'avérer utile si la bibliothèque est incapable de trouver d'autres bibliothèques dans le répertoire où elle est située. | L'installation de binaires précompilés (tels que [https://conda.io/miniconda.html Miniconda]) dans votre espace home pourrait générer une erreur comme <code>/lib64/libc.so.6: version `GLIBC_2.18' not found</code>. Le script <code>setrpaths.sh</code> peut souvent éliminer ce problème avec la syntaxe <code>setrpaths.sh --path path [--add_origin]</code> où ''path'' représente le répertoire dans lequel vous avez installé le logiciel. Le script fait en sorte que les binaires utilisent le bon interpréteur et trouvent les bibliothèque auxquelles ils sont dynamiquement liés, dans le bon répertoire. L'option <code>--add_origin</code> ajoute aussi $ORIGIN au RUNPATH, ce qui peut s'avérer utile si la bibliothèque est incapable de trouver d'autres bibliothèques dans le répertoire où elle est située. | ||
== L'environnement logiciel de Calcul Canada == | == L'environnement logiciel de Calcul Canada == |