38,789
edits
No edit summary |
(Updating to match new version of source page) |
||
Line 28: | Line 28: | ||
Les langages Python, R, et Perl offrent d'importantes librairies d'extensions; presque toutes peuvent être facilement installées dans votre répertoire home. Consultez les pages [https://docs.computecanada.ca/wiki/Python/fr Python], [https://docs.computecanada.ca/wiki/R/fr R] et [https://docs.computecanada.ca/wiki/Perl Perl] pour savoir si le paquet dont vous avez besoin est disponible; si ce n'est pas le cas, vous trouverez aussi dans cette documentation l'information nécessaire pour l’installer par vous-même. | Les langages Python, R, et Perl offrent d'importantes librairies d'extensions; presque toutes peuvent être facilement installées dans votre répertoire home. Consultez les pages [https://docs.computecanada.ca/wiki/Python/fr Python], [https://docs.computecanada.ca/wiki/R/fr R] et [https://docs.computecanada.ca/wiki/Perl Perl] pour savoir si le paquet dont vous avez besoin est disponible; si ce n'est pas le cas, vous trouverez aussi dans cette documentation l'information nécessaire pour l’installer par vous-même. | ||
<div class="mw-translate-fuzzy"> | |||
== La pile logicielle de Calcul Canada == | == La pile logicielle de Calcul Canada == | ||
Le système de fichiers CVFMS (''shared software distribution system'') rend presque tous les logiciels disponibles sur les nouvelles grappes. Sous Linux, les logiciels seraient installés dans <code>/usr/bin</code>, <code>/usr/include</code> et ainsi de suite, alors que dans notre cas, ils sont installés de manière identique sur toutes les nouvelles grappes sous <code>/cvmfs/soft.computecanada.ca</code>. | Le système de fichiers CVFMS (''shared software distribution system'') rend presque tous les logiciels disponibles sur les nouvelles grappes. Sous Linux, les logiciels seraient installés dans <code>/usr/bin</code>, <code>/usr/include</code> et ainsi de suite, alors que dans notre cas, ils sont installés de manière identique sur toutes les nouvelles grappes sous <code>/cvmfs/soft.computecanada.ca</code>. | ||
</div> | |||
<div class="mw-translate-fuzzy"> | |||
Le module <code>nixpkgs/16.09</code> est chargé par défaut et agit comme cœur pour la pile logicielle gérée par le gestionnaire de paquets Nic situé sous <code>/cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09</code>. | Le module <code>nixpkgs/16.09</code> est chargé par défaut et agit comme cœur pour la pile logicielle gérée par le gestionnaire de paquets Nic situé sous <code>/cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09</code>. | ||
Line 36: | Line 39: | ||
Cependant, dans le cas de certains logiciels, <code>/usr</code> est explicitement indiqué; si c'est le cas, la compilation s'arrête et vous devrez spécifier <code>$EBROOTNIXPKGS</code>. Il faudra quelquefois ajuster un Makefile, passer un indicateur <code>--with-</code> via le script de compilation ou éditer un fichier de configuration. Si vous ne savez pas comment procéder, contactez le soutien technique. | Cependant, dans le cas de certains logiciels, <code>/usr</code> est explicitement indiqué; si c'est le cas, la compilation s'arrête et vous devrez spécifier <code>$EBROOTNIXPKGS</code>. Il faudra quelquefois ajuster un Makefile, passer un indicateur <code>--with-</code> via le script de compilation ou éditer un fichier de configuration. Si vous ne savez pas comment procéder, contactez le soutien technique. | ||
</div> | |||
<div class="mw-translate-fuzzy"> | |||
De la même manière, si un paquet dépend d'une librairie provenant d'un module autre que <code>nixpkgs</code>, vous devrez peut-être spécifier où se trouvent les fichiers entête et les librairies du module. La norme EBROOT s'applique à tous les modules; la librairie HDF5 par exemple est installée dans <code>$EBROOTHDF5</code>, et ses sous-répertoires <code>include</code> et <code>lib</code> sont installés à l’exécution de <code>module load hdf5</code>. | De la même manière, si un paquet dépend d'une librairie provenant d'un module autre que <code>nixpkgs</code>, vous devrez peut-être spécifier où se trouvent les fichiers entête et les librairies du module. La norme EBROOT s'applique à tous les modules; la librairie HDF5 par exemple est installée dans <code>$EBROOTHDF5</code>, et ses sous-répertoires <code>include</code> et <code>lib</code> sont installés à l’exécution de <code>module load hdf5</code>. | ||
</div> | |||
<div class="mw-translate-fuzzy"> | |||
Si un fichier entête ou une librairie habituellement offert dans une distribution de type Linux par un RPM ou autre gestionnaire de paquets ne se trouve ni par <code>nixpkgs</code>, ni par un autre module, veuillez nous en informer; nous pourrons très probablement l'ajouter. | Si un fichier entête ou une librairie habituellement offert dans une distribution de type Linux par un RPM ou autre gestionnaire de paquets ne se trouve ni par <code>nixpkgs</code>, ni par un autre module, veuillez nous en informer; nous pourrons très probablement l'ajouter. | ||
</div> | |||
<div class="mw-translate-fuzzy"> | |||
'''Notes''' | '''Notes''' | ||
Line 46: | Line 55: | ||
* Si vous installez des binaires précompilés dans votre répertoire home (par exemple [https://conda.io/miniconda.html Miniconda]), vous pourriez recevoir une erreur telle que <code>/lib64/libc.so.6: version `GLIBC_2.18' not found</code>. Ces binaires peuvent souvent être réparés avec le script <code>setrpaths.sh</code> en utilisant la syntaxe <code>setrpaths.sh --path path [--add_origin]</code> où path désigne le répertoire où vous avez installé le logiciel. Ce script fait en sorte que les binaires utilisent le bon interpréteur et cherche les librairies auxquelles ils sont dynamiquement liés dans le répertoire approprié. L'option <code>--add_origin</code> ajoute aussi $ORIGIN au RUNPATH, ce qui peut s'avérer utile si la librairie ne peut trouver d'autres librairies situées dans le même répertoire qu'elle-même. | * Si vous installez des binaires précompilés dans votre répertoire home (par exemple [https://conda.io/miniconda.html Miniconda]), vous pourriez recevoir une erreur telle que <code>/lib64/libc.so.6: version `GLIBC_2.18' not found</code>. Ces binaires peuvent souvent être réparés avec le script <code>setrpaths.sh</code> en utilisant la syntaxe <code>setrpaths.sh --path path [--add_origin]</code> où path désigne le répertoire où vous avez installé le logiciel. Ce script fait en sorte que les binaires utilisent le bon interpréteur et cherche les librairies auxquelles ils sont dynamiquement liés dans le répertoire approprié. L'option <code>--add_origin</code> ajoute aussi $ORIGIN au RUNPATH, ce qui peut s'avérer utile si la librairie ne peut trouver d'autres librairies situées dans le même répertoire qu'elle-même. | ||
* En dernier recours, utilisez <code>module --force purge</code> pour éliminer l'environnement CVMFS. Vous obtiendrez ainsi une installation CentOS-7 brute, sans modules. Ceci peut servir dans des cas spéciaux où vous compilez GCC par vous-même ou quand vous utilisez des chaines de compilation comme [http://www.astro.wisc.edu/~townsend/static.php?ref=mesasdk MESA SDK]. Il ne serait nécessaire de purger des modules qu'à la compilation et ils peuvent être chargés à nouveau au lancement du logiciel. | * En dernier recours, utilisez <code>module --force purge</code> pour éliminer l'environnement CVMFS. Vous obtiendrez ainsi une installation CentOS-7 brute, sans modules. Ceci peut servir dans des cas spéciaux où vous compilez GCC par vous-même ou quand vous utilisez des chaines de compilation comme [http://www.astro.wisc.edu/~townsend/static.php?ref=mesasdk MESA SDK]. Il ne serait nécessaire de purger des modules qu'à la compilation et ils peuvent être chargés à nouveau au lancement du logiciel. | ||
</div> |