GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So erstellen Sie Pakete aus der Quelle mit CheckInstall

Vor einiger Zeit haben wir über ein Dienstprogramm namens Fpm geschrieben Das hilft beim einfachen Erstellen von Linux-Paketen für mehrere Linux-Plattformen. Heute werden wir über CheckInstall sprechen die auch verwendet wird, um Linux-Pakete aus dem Quellcode zu erstellen.

Eine kurze Einführung in CheckInstall

Normalerweise installieren wir Pakete mit den Paketmanagern der Distribution. Aber wenn eine Anwendung, die Sie installieren möchten, nicht in Ihren Distributions-Repositories verfügbar ist, haben Sie keine andere Wahl, als manuell aus dem Quellcode zu kompilieren und zu installieren.

Das Kompilieren und Installieren von Anwendungen aus dem Quellcode ist für manche Leute etwas schwierig, insbesondere für Neulinge. Hier helfen Programme wie FPM und CheckInstall.

CheckInstall ist ein Programm, das ein Programm aus dem Quellcode kompiliert und ein natives Paket für Ihre Linux-Distribution erstellt. Damit Sie die Pakete mit dem Paketverwaltungssystem Ihrer Distribution (dpkg, rpm oder installpkg) installieren können.

Derzeit erstellt CheckInstall native Pakete für DEB-basierte Systeme, RPM-basierte Systeme und Slackware. In diesem kurzen Tutorial werden wir besprechen, wie man mit dem CheckInstall-Programm Pakete aus dem Quellcode erstellt.

Installieren Sie CheckInstall unter Linux

CheckInstall ist in den Standard-Repositories der meisten Linux-Distributionen verfügbar. Sie können es also mit den Paketmanagern installieren.

Sagen wir zum Beispiel:In Debian-basierten Systemen können Sie es mit dem folgenden Befehl installieren:

$ sudo apt-get install checkinstall

Unter SUSE/openSUSE:

$ sudo zypper install checkinstall

Unter CentOS, RHEL, Fedora:

Laden Sie die CheckInstall-RPM-Datei von diesem Link herunter und installieren Sie sie .

# 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
Herunterladen - Kostenloses eBook:"Linux®-Patch-Management:Linux®-Systeme auf dem neuesten Stand halten"

Pakete aus der Quelle mit CheckInstall erstellen

Hier sind die einfachen Schritte zum Erstellen eines DEB-Pakets von ‘hello’ Programm. Ich habe die folgenden Schritte in Ubuntu 16.04 LTS getestet.

Laden Sie zuerst den Tarball des 'hello'-Programms herunter.

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

Extrahieren Sie den Tarball mit dem Befehl:

$ tar -zxvf hello-2.10.tar.gz

Gehen Sie dann in das Verzeichnis, in das Sie hello tarball entpackt haben.

$ cd hello-2.10/

Führen Sie die folgenden Befehle nacheinander aus, um es zu kompilieren.

$ ./configure
$ make

Anstatt jetzt "make install" einzugeben Um das Programm zu installieren, geben wir den folgenden Befehl ein:

$ sudo checkinstall --install=no

Dieser Befehl erstellt .deb Paket, aber installiert es nicht. Drücken Sie Y um ein Paketdokumentationsverzeichnis mit dem Namen "doc-pak" zu erstellen .

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

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

Jetzt können Sie die neu erstellte .deb installieren Paket mit dpkg Paketmanager:

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

Wenn Sie den obigen Befehl ohne "--install=no" ausführen Flag, wird es automatisch das Deb-Paket erstellen und es auf Ihrem System installieren.

$ sudo checkinstall

Beispielausgabe:

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

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

Dieser Befehl erstellt die .deb-Datei und installiert sie automatisch auf Ihrem System. Sie können das Installationspaket jederzeit mit folgendem Befehl entfernen:

$ sudo dpkg -r hello

Installation prüfen erstellt eine .rpm oder eine .deb Paket automatisch, abhängig vom Typ Ihrer aktuellen Linux-Distribution, die Sie verwenden. Wenn Sie ein .rpm-Paket erstellen müssen, befolgen Sie einfach die obigen Schritte in allen RPM-basierten Systemen. Führen Sie dies für Slackware-Pakete auf dem Slackware-System aus.

Weitere Einzelheiten finden Sie in den Manpages:

$ man checkinstall

Oder sehen Sie im Hilfebereich nach.

$ checkinstall --help

Verwandte Lektüre:

  • So konvertieren Sie Linux-Pakete mit Alien
  • Wie man Debian-Pakete aus den Quellen erstellt

Linux
  1. Wie man RPM-Pakete baut

  2. Wie erstelle ich ein .deb-Paket von Github?

  3. Debian:So installieren oder entfernen Sie DEB-Pakete mit dpkg

  4. So installieren Sie MongoDB von der Quelle (und mit YUM) unter Linux

  5. So installieren Sie Pakete mit dnf in CentOS/RHEL 8

So erstellen Sie ein Ubuntu-Paket aus der Quelle

So installieren Sie ein Programm von der Quelle unter Linux

So installieren Sie Pakete sicher mit Npm oder Yarn unter Linux

Wie man Debian-Pakete aus den Quellen erstellt

So kompilieren Sie den Linux-Kernel aus der Quelle, um einen benutzerdefinierten Kernel zu erstellen

So listen Sie installierte Pakete in Linux mithilfe der Paketverwaltung auf