GNU/Linux >> Tutoriels Linux >  >> Linux

Comment compiler et installer un logiciel à partir du code source sous Linux

Bien que yum, apt-get, rpm soient très pratiques pour installer un paquet déjà compilé, vous pouvez toujours rencontrer des situations où vous devez installer un logiciel à partir du code source.

Cet article explique de manière très détaillée comment compiler et installer un logiciel à partir du code source.

Téléchargez le package de code source et décompressez-le

Le code source des logiciels sous Linux se présente sous la forme de fichiers tar compressés, qui ont généralement les extensions .tar.gz ou .tar.bz2. Les outils utilisés pour emballer le code source dans ces boules de tar sont « tar » (utilisé pour combiner plusieurs fichiers en un seul), « gzip » ou bzip2 (utilisé pour la compression). Pour récupérer l'archive du code source d'un logiciel particulier, vous devez connaître l'URL de l'archive.

Une fois que vous avez le lien de téléchargement, utilisez "wget" pour récupérer l'archive depuis la ligne de commande.

$ wget <link to the tarball>

La commande ci-dessus téléchargera l'archive tar dans le répertoire courant. La commande wget est très flexible et a beaucoup d'options. Pour en savoir plus sur wget, reportez-vous aux 15 exemples de wget.

Ensuite, vous devez décompresser l'archive tar afin d'avoir accès au code source et aux autres fichiers. Selon l'extension, utilisez l'une des commandes suivantes :

$ tar -xvfz <name of tarball with .tar.gz extension>
(or)
$ tar -xvfj <name of tarball with tar.bz2 extension>

La commande tar est très flexible et a beaucoup d'options. Pour en savoir plus sur tar, reportez-vous aux 10 exemples de tar.

Lire la documentation d'installation

Une fois le code source du logiciel téléchargé et extrait, la toute première chose à faire est de parcourir la documentation. Cela peut sembler ennuyeux pour la plupart d'entre nous, mais c'est une étape très importante car faire cette étape à fond vous éviterait la plupart des problèmes futurs. La documentation fournit des informations sur le logiciel, les modifications depuis la dernière version, des liens vers plus de documentation, des informations reclassant l'auteur du logiciel, les étapes de compilation et d'installation du logiciel, etc. Nous pouvons donc voir que de nombreuses informations précieuses sont présentes dans la documentation.

L'ensemble de ces informations est globalement divisé en deux fichiers :"Readme" et "Install". Alors que "Installer" couvre toutes les informations requises pour la compilation et l'installation, toutes les autres informations sont couvertes dans le fichier "Readme". Veuillez noter que le nom du fichier et sa casse peuvent varier.

Configuration

Une fois l'étape ci-dessus terminée, nous pouvons supposer que nous avons suffisamment de connaissances théoriques sur ce logiciel et maintenant nous pouvons avancer et configurer l'environnement pour compiler et installer le logiciel sur notre système. La plupart des packages sont accompagnés d'un script de configuration qui peut être utilisé pour configurer l'environnement. Le nom du fichier pour le fichier de configuration est principalement « configure ». Ce script accepte généralement des paramètres qui peuvent être utilisés pour contrôler certaines fonctionnalités de ce logiciel. De plus, ce script s'assure que tous les outils nécessaires à la compilation sont présents dans le système.

Pour en savoir plus sur les options fournies par un fichier de configuration spécifique, exécutez la commande suivante :

$ configure --help

Pour commencer à configurer l'environnement de construction, exécutez la commande suivante :

$ ./configure

La commande ci-dessus vérifiera et/ou créera l'environnement de construction et si tout se passe bien, elle produira un fichier appelé "makefile". Le fichier ‘makefile’ est utilisé dans la compilation du logiciel.

Compilation

Une fois le makefile généré, alors dans le même répertoire il suffit d'exécuter la commande suivante :

$ make

La commande ci-dessus compilera tout le code source lié au logiciel. Si la compilation rencontre un problème, une erreur est renvoyée sur la console.

Installation

Une fois la compilation effectuée avec succès, tous les fichiers binaires requis sont créés. Il est maintenant temps d'installer ces binaires dans les chemins standard afin qu'ils puissent être appelés de n'importe où dans le système. Pour cela lancez la commande suivante :

$ make install

Notez que parfois, l'installation du logiciel peut nécessiter des privilèges root, vous pouvez donc obtenir les droits, puis poursuivre avec la commande ci-dessus.

Les 5 étapes ci-dessus montrent comment récupérer, décompresser, configurer, compiler et installer le logiciel à partir de la source. De plus, on pourrait faire un peu de nettoyage en supprimant le répertoire créé lors de la décompression de l'archive du logiciel.

Les articles suivants sont quelques exemples sur la façon d'installer un logiciel à partir du code source.

  • Comment installer Apache 2.4.2 à partir de la source sur CentOS 6.2 avec SSL
  • Comment installer et configurer Nginx à partir de la source sur Linux
  • Guide d'instructions pour installer PHP5 à partir de la source sur Linux
  • Tutoriel Tripwire :Système de détection d'intrusion basé sur l'hôte Linux
  • Tutoriel :7 étapes pour l'installation, la configuration et la configuration des utilisateurs de Linux vsftpd

Lors de la compilation et de l'installation d'un logiciel open source à partir de la source, des problèmes/erreurs peuvent survenir. Examinons-en quelques-uns ici :

  • Bibliothèque partagée manquante :Parfois, lorsque vous exécutez le programme que vous venez d'installer, vous obtenez une erreur liée à certains .so que votre programme n'est pas en mesure de trouver. Premièrement, .so est synonyme des DLL que nous avons dans Windows. Ce sont des bibliothèques partagées requises par le programme. Deuxièmement, ces types d'erreurs surviennent lorsque votre programme est installé dans un chemin non standard ou que la bibliothèque partagée n'est pas présente sur votre système. Pour le premier cas, vous devez indiquer à l'environnement shell le chemin d'installation de ces nouvelles bibliothèques partagées. Cela peut être fait en utilisant la commande 'ldconfig' ou en modifiant la variable LD_LIBRARY_PATH.
  • Code source cassé :peu importe la difficulté que vous éprouvez en parcourant toute la documentation et en couvrant toutes les étapes de construction du logiciel, mais si le code source donne une erreur de compilation, cela signifie vraiment que le logiciel a un code source cassé. Rien ne peut être fait dans ce cas, sauf renvoyer ce problème à l'auteur de ce logiciel. En attendant, si vous pensez pouvoir le faire, vous pouvez déboguer les erreurs et voir s'il s'agit d'erreurs triviales qui peuvent être corrigées (comme des erreurs de syntaxe).
  • Aucun script de configuration :bien que rare, vous constaterez parfois qu'aucun script de configuration n'est présent dans le répertoire du code source. Si cela se produit, cela ne signifie pas que vous êtes bloqué. Dans ce cas, tout ce dont vous avez besoin est de parcourir la documentation en détail et vous y trouverez certainement des informations concernant la configuration de l'environnement pour la compilation et l'installation du logiciel.

Linux
  1. Comment compiler et installer FFmpeg à partir de la source dans CentOS/RHEL ?

  2. Comment installer l'éditeur nano à partir du code source

  3. Comment compiler à partir des sources et installer Nginx dans un VPS Debian 7 (Wheezy)

  4. Installer Apache 2 à partir de la source sur Linux

  5. Comment installer MongoDB à partir de la source (et en utilisant YUM) sous Linux

Principes de base de la compilation de logiciels à partir du code source sous Linux

Comment installer un logiciel à partir de la source sous Linux

Comment installer et supprimer des logiciels dans Manjaro Linux

Comment installer un logiciel à partir du code source… et le supprimer ensuite

Comment compiler le noyau Linux à partir de la source pour créer un noyau personnalisé

Comment installer un logiciel à partir du code source dans votre système Linux