GNU/Linux >> Tutoriels Linux >  >> Linux

Comment créer des packages à partir de la source à l'aide de CheckInstall

Il y a quelque temps, nous avons écrit sur un utilitaire appelé Fpm qui aide à créer facilement des packages Linux pour plusieurs plates-formes Linux. Aujourd'hui, nous allons discuter de CheckInstall qui est également utilisé pour créer des packages Linux à partir du code source.

Une brève introduction à CheckInstall

Habituellement, nous installons les packages à l'aide des gestionnaires de packages de la distribution. Mais si une application que vous souhaitez installer n'est pas disponible dans vos dépôts de distribution, vous n'avez pas d'autre choix que de compiler et de vous installer manuellement à partir du code source.

Compiler et installer des applications à partir du code source est un peu difficile pour certaines personnes, en particulier les débutants. C'est là qu'interviennent des programmes comme FPM et CheckInstall.

CheckInstall est un programme qui compile un programme à partir du code source et crée un package natif pour votre distribution Linux. Afin que vous puissiez installer les packages à l'aide du système de gestion de packages de votre distribution (dpkg, rpm ou installpkg).

Actuellement, CheckInstall crée des packages natifs pour les systèmes basés sur DEB, les systèmes basés sur RPM et Slackware. Dans ce bref didacticiel, nous expliquerons comment créer des packages à partir de la source à l'aide du programme CheckInstall.

Installer CheckInstall sous Linux

CheckInstall est disponible dans la plupart des référentiels par défaut de la distribution Linux. Vous pouvez donc l'installer à l'aide des gestionnaires de packages.

Supposons, par exemple, que dans les systèmes basés sur Debian, vous pouvez l'installer à l'aide de la commande suivante :

$ sudo apt-get install checkinstall

Sur SUSE/openSUSE :

$ sudo zypper install checkinstall

Sur CentOS, RHEL, Fedora :

Téléchargez et installez le fichier rpm CheckInstall à partir de ce lien .

# wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/ikoinoba/CentOS_CentOS-6/x86_64/checkinstall-1.6.2-3.el6.1.x86_64.rpm
# yum install checkinstall-1.6.2-3.el6.1.x86_64.rpm
Télécharger - Ebook gratuit :"Gestion des correctifs Linux® :Maintenir les systèmes Linux® à jour"

Créer des packages à partir de la source à l'aide de CheckInstall

Voici les étapes simples pour créer un package DEB de ‘hello’ programme. J'ai testé les étapes suivantes dans Ubuntu 16.04 LTS.

Téléchargez d'abord l'archive tar du programme 'hello'.

$ wget http://ftp.gnu.org/gnu/hello/hello-2.10.tar.gz

Extrayez l'archive à l'aide de la commande :

$ tar -zxvf hello-2.10.tar.gz

Ensuite, allez dans le répertoire où vous avez extrait l'archive hello.

$ cd hello-2.10/

Exécutez les commandes suivantes une par une pour le compiler.

$ ./configure
$ make

Maintenant, au lieu de taper "make install" commande pour installer le programme, nous tapons la commande suivante :

$ sudo checkinstall --install=no

Cette commande créera .deb package, mais ne l'installera pas. Appuyez sur Y pour créer un répertoire de documentation de package nommé "doc-pak" .

checkinstall 1.6.2, Copyright 2009 Felipe Eduardo Sanchez Diaz Duran
 This software is released under the GNU GPL.

The package documentation directory ./doc-pak does not exist. 
Should I create a default set of package docs? [y]: y

Preparing package documentation...OK

Please write a description for the package.
End your description with an empty line or EOF.
>> Simple Hello Program ## Type your Program name and hit ENTER key.
>>

*****************************************
**** Debian package creation selected ***
*****************************************

This package will be built according to these values:

0 - Maintainer: [ [email protected] ]
1 - Summary: [ Simple Hello Program ]
2 - Name: [ hello ]
3 - Version: [ 2.10 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ checkinstall ]
7 - Architecture: [ amd64 ]
8 - Source location: [ hello-2.10 ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
11 - Provides: [ hello ]
12 - Conflicts: [ ]
13 - Replaces: [ ]

Enter a number to change any of them or press ENTER to continue: ## Hit ENTER key

[...]

Building file list...OK

Building Debian package...OK

NOTE: The package will not be installed

Erasing temporary files...OK

Deleting temp dir...OK


**********************************************************************

Done. The new package has been saved to

/home/sk/hello-2.10/hello_2.10-1_amd64.deb
 You can install it in your system anytime using:

dpkg -i hello_2.10-1_amd64.deb

**********************************************************************

Maintenant, vous pouvez installer le nouveau .deb paquet utilisant dpkg gestionnaire de paquets :

$ sudo dpkg -i hello_2.10-1_amd64.deb

Si vous exécutez la commande ci-dessus sans "--install=no" flag, il créera automatiquement le paquet deb et l'installera sur votre système.

$ sudo checkinstall

Exemple de résultat :

checkinstall 1.6.2, Copyright 2009 Felipe Eduardo Sanchez Diaz Duran
 This software is released under the GNU GPL.

*****************************************
**** Debian package creation selected ***
*****************************************

This package will be built according to these values:

0 - Maintainer: [ [email protected] ]
1 - Summary: [ Simple Hello Program ]
2 - Name: [ hello ]
3 - Version: [ 2.10 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ checkinstall ]
7 - Architecture: [ amd64 ]
8 - Source location: [ hello-2.10 ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
11 - Provides: [ hello ]
12 - Conflicts: [ ]
13 - Replaces: [ ]

Enter a number to change any of them or press ENTER to continue: ##Press ENTER

[...]

Installing Debian package...OK

Erasing temporary files...OK

Writing backup package...OK
OK

Deleting temp dir...OK


**********************************************************************

Done. The new package has been installed and saved to

/home/sk/hello-2.10/hello_2.10-1_amd64.deb

You can remove it from your system anytime using:

dpkg -r hello

**********************************************************************

Cette commande créera le fichier .deb et l'installera automatiquement sur votre système. Vous pouvez supprimer le package d'installation à tout moment à l'aide de la commande :

$ sudo dpkg -r hello

Vérifier l'installation va créer un .rpm ou un .deb package automatiquement, selon le type de votre distribution Linux actuelle que vous utilisez. Si vous devez créer un package .rpm, suivez simplement les étapes ci-dessus dans tous les systèmes basés sur RPM. Pour les packages Slackware, faites-le sur le système Slackware.

Pour plus de détails, consultez les pages de manuel :

$ man checkinstall

Ou consultez la section d'aide.

$ checkinstall --help

Lire connexe :

  • Comment convertir des packages Linux avec Alien
  • Comment créer des packages Debian à partir de la source

Linux
  1. Comment créer des paquets rpm

  2. Debian :comment installer ou supprimer des packages DEB à l'aide de dpkg

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

  4. 7 étapes pour créer un package RPM à partir de la source sur CentOS / RedHat

  5. Comment installer des packages à l'aide de dnf dans CentOS/RHEL 8

Comment créer un paquet Ubuntu à partir de la source

Comment installer un programme à partir de la source sous Linux

Comment installer en toute sécurité des packages à l'aide de Npm ou de Yarn sous Linux

Comment construire des paquets Debian à partir de la source

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

Comment répertorier les packages installés sous Linux à l'aide de la gestion des packages