LevelDB Debian (.deb)-Pakete bauen

English Deutsch

Problem:

Du beabsichtigst, LevelDB zu installieren, möchtest es aber nicht manuell installieren & kompilieren, wie hier beschrieben.

Stattdessen möchtest du einfach das Debian-Paketsystem und eine reproduzierbare Methode zur Erstellung eines DEB-Pakets aus LevelDB verwenden.

Gründe, manuelles Kompilieren & Installieren vorzuziehen:

Lösung

Du kannst das hier aufgelistete Skript verwenden, um dein eigenes DEB-Paket zu bauen.

Um dieses Skript auszuführen, musst du zuerst einige Abhängigkeiten installieren.

install_deb_build_deps.sh
sudo apt-get install devscripts debhelper libsnappy-dev

Beachte jedoch, dass dieses Skript kein Paket generiert, das den Debian-Paketierungsspezifikationen entspricht – das Changelog enthält nur eine Dummy-Nachricht, kein Maintainer ist angegeben usw.

Das Skript kompiliert LevelDB immer mit Snappy-Unterstützung, daher können die Pakete nicht ohne Snappy installiert werden. Beachte, dass das Paket libsnappy-dev nur in Ubuntu vorhanden ist; für Debian musst du Snappy manuell installieren und/oder die Snappy-Abhängigkeit im Build-Skript entfernen.

Platziere es einfach in einem (vorzugsweise leeren) Verzeichnis deiner Wahl und führe es aus – LevelDB wird automatisch heruntergeladen und gebaut. Nach Abschluss sollten drei DEB-Dateien (Bibliothek, C++-Header und Dokumentation) plus einige Debuild-Metadateien in dem Verzeichnis vorhanden sein, in dem du das Skript platziert hast. Wenn dies nicht der Fall ist, lies die Fehlermeldungen und handle entsprechend.

Siehe http://wiki.debian.org/IntroDebianPackaging für eine allgemeine Einführung in die Debian-Paketierung. Möglicherweise benötigst du tiefergehende Kenntnisse des DEB-Paketbaus, um das Skript zu verstehen und zu modifizieren.

Das Skript wurde auf Ubuntu 12.04 und Ubuntu 13.04 getestet.

Das Skript ist in meinem deb-buildscripts-Repository gehostet, das nun verschiedene Skripte für Standalone-Builds verschiedener Software als DEB ohne besondere Voraussetzungen enthält.

Beachte, dass du deb-buildscripts Commit e4666142 auschecken musst, da LevelDB im aktuellen Master nicht unterstützt wird.

Klicke auf diesen Link, um das Skript zu sehen: deb-leveldb.sh


Check out similar posts by category: Allgemein