====== 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-essential'' soit déjà installé. * Il faut installer un compilateur supplémentaire, ''cmake'', en plus de ''make'', ainsi que les librairies suivantes (certaines le sont probablement déjà mais dans un tel cas, on aura une mise à jour): * ''libboost-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'' * ''libjs-sphinxdoc'' * ''liblzma-dev'' * ''libcereal-dev'' * ''libcurl4-openssl-dev'' * ''libtbb-dev'' * ''libzstd-dev'' * ''pkg-config'' * ''zlib1g-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.1'' devrait appartenir à ''root''. Les permissions de ce dossier devraient être ''755''. % 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.hpp'' qu'on ouvre avec "nano" pour faire la modification: % cd ./salmon-1.10.1 % nano ./include/salmonConfig.hpp # # On change la ligne suivante: # #include # # ... pour ceci: # #include #include * le deuxième fichier à modifier est ''salmon-1.10.1/include/SalmonExceptions.hpp'': % nano ./include/salmonConfig.hpp # # On change les lignes suivantes: # #include #include # # ... pour ceci: # #include #include #include * 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.sh'' en 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