Installation de Salmon 1.10.1
Des changements dans l'environnement de développement+compilation oblige le changement de certains fichiers source pour permettre une compilation réussie…
Librairies additionnelles
- Il faut commencer par s'assurer que la librairie
build-essentialsoit déjà installé. - Il faut installer un compilateur supplémentaire,
cmake, en plus demake, ainsi que les librairies suivantes (certaines le sont probablement déjà mais dans un tel cas, on aura une mise à jour):libboost-devlibboost-filesystem-devlibboost-iostreams-devlibboost-program-options-devlibboost-chrono-devlibboost-system-devlibboost-timer-devlibbz2-devlibcurl4-openssl-devlibjemalloc-devlibjs-sphinxdocliblzma-devlibcereal-devlibcurl4-openssl-devlibtbb-devlibzstd-devpkg-configzlib1g-dev
% sudo apt install cmake libboost-dev libboost-chrono-dev libboost-filesystem-dev libboost-iostreams-dev libboost-program-options-dev libboost-chrono-dev libboost-system-dev libboost-timer-dev libbz2-dev libcurl4-openssl-dev libjemalloc-dev liblzma-dev libcereal-dev libtbb-dev libzstd-dev pkg-config zlib1g-dev
Procédure
Voici la procédure suivi pour l'installation de Salmon à partir du code source:
- L'archive a été téléchargé du site web sous
/opt/bio/sources/et décompressé.
% cd /opt/bio/sources % sudo curl -L -o salmon.v1.10.1.tar.gz [[https://github.com/COMBINE-lab/salmon/archive/refs/tags/v1.10.1.tar.gz|https://github.com/COMBINE-lab/salmon/archive/refs/tags/v1.10.1.tar.gz]] % sudo tar -zxvf salmon.v1.10.1.tar.gz % sudo rm -rf salmon.v1.10.1.tar.gz
- Le dossier
salmon-1.10.1devrait appartenir àroot. Les permissions de ce dossier devraient être755.
% sudo chown -R root:root ./salmon-1.10.1 % sudo chmod 755 ./salmon-1.10.1
- Avant de continuer, il nous faut ajouter une ligne dans certaines fichiers… Le premier de ces fichiers est
salmon-1.10.1/include/SalmonConfig.hppqu'on ouvre avec “nano” pour faire la modification:
% cd ./salmon-1.10.1 % nano ./include/salmonConfig.hpp # # On change la ligne suivante: # #include <string> # # ... pour ceci: # #include <string> #include <cstdint>
- le deuxième fichier à modifier est
salmon-1.10.1/include/SalmonExceptions.hpp:
% nano ./include/salmonConfig.hpp # # On change les lignes suivantes: # #include <sstream> #include <stdexcept> # # ... pour ceci: # #include <sstream> #include <stdexcept> #include <cstdint>
- Comme on se retrouve toujours dans le dossier
salmon-1.10.1, on effectue la compilation simplement:
# Sur serveur réel ou MV en architecture x86_64: % sudo cmake -DNO_IPO=TRUE -DBOOST_ROOT=/usr/lib/x86_64-linux-gnu -DCMAKE_INSTALL_PREFIX=`pwd` # Si vous êtes sur un RPi: % sudo cmake -DNO_IPO=TRUE -DBOOST_ROOT=/usr/lib/aarch64-linux-gnu -DCMAKE_INSTALL_PREFIX=`pwd` # Les prochaines étapes vont prendre un certain temps… % sudo make && sudo make install
- Il faut éditer le fichier
/etc/profile.d/impilo.shen y ajoutant ces lignes à la toute fin:
# # Salmon specific environment variables # export PATH=$PATH:/opt/bio/sources/salmon-1.10.1/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/bio/sources/salmon-1.10.1/lib