Kompilieren

Aus Ubuntu-Forum Wiki

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Sauberes Installieren)
 
(Der Versionsvergleich bezieht 9 dazwischenliegende Versionen mit ein.)
Zeile 1: Zeile 1:
-
[[Bild:710.png]] [[Bild:704.png]]
+
[[Bild:810.png]] [[Bild:804.png]] [[Bild:710.png]] [[Bild:704.png]]
-
 
+
{{Begriffserklärung}}
 +
{{Update}}
__TOC__
__TOC__
Zeile 8: Zeile 9:
=Systemvoraussetzungen=
=Systemvoraussetzungen=
-
Aus irgendwelchen Gründen werden Header-Dateien, die für den Kompiliervorgang notwendig sind. nicht in die Standardinstallation integriert. Es muss mindestens noch das Paket ''libc6-dev'' nachinstalliert werden:
+
Aus irgendwelchen Gründen werden Header-Dateien, die für den Kompiliervorgang notwendig sind, nicht in die Standardinstallation integriert. Es muss mindestens noch das Paket ''libc6-dev'' nachinstalliert werden:
  sudo apt-get install libc6-dev
  sudo apt-get install libc6-dev
Zeile 22: Zeile 23:
;GNOME:
;GNOME:
  sudo apt-get install gnome-core-devel
  sudo apt-get install gnome-core-devel
 +
 +
;Kernel:
 +
Sollen Module für den Kernel kompiliert werden, müssen noch die entsprechenden Kernel-Header installiert werden
 +
sudo apt-get install linux-headers-generic
=Kompiliervorgang=
=Kompiliervorgang=
Zeile 40: Zeile 45:
  sudo make install
  sudo make install
-
Sollte configure mit einer Fehlermeldung abbrechen, so liegt das meist daran, dass noch andere Pakete, die das neue Programm zum Ausführen benötigt, nachinstalliert werden. Der genaue Grund und das eventuell nachzuinstallierende Paket, steht meist in der Fehlermeldung.
+
Sollte configure mit einer Fehlermeldung abbrechen, so liegt das meist daran, dass noch andere Pakete, die das neue Programm zum Ausführen benötigt, nachinstalliert werden müssen. Der genaue Grund und das eventuell nachzuinstallierende Paket, steht meist in der Fehlermeldung.
 +
 
 +
Das kompilierte Paket kann auch vor der Installation gestestet werden. Der nachfolgende Befehl simuliert lediglich eine Installation.
 +
make installcheck
Der Nachteil der ''make install''-Methode ist, dass so installierte Pakete nicht vom Ubuntu-Paketmanagement verwaltet werden können. Das macht eine spätere Deinstallation oder Aktualisierung komplizierter. Daher bietet es sich an, mit dem unten beschriebenen '''checkinstall''' ein .deb-File zu erzeugen.
Der Nachteil der ''make install''-Methode ist, dass so installierte Pakete nicht vom Ubuntu-Paketmanagement verwaltet werden können. Das macht eine spätere Deinstallation oder Aktualisierung komplizierter. Daher bietet es sich an, mit dem unten beschriebenen '''checkinstall''' ein .deb-File zu erzeugen.
Zeile 58: Zeile 66:
Sollte dies nicht funktionieren, bleibt nur der Weg über händisches Löschen der einzelnen Dateien.
Sollte dies nicht funktionieren, bleibt nur der Weg über händisches Löschen der einzelnen Dateien.
-
=Sauberes Installieren=
+
=Checkinstall=
Anstatt das Paket mit  
Anstatt das Paket mit  
  sudo make install
  sudo make install
Zeile 70: Zeile 78:
  ./configure
  ./configure
  make
  make
-
  sudo checkinstall -D  
+
  sudo checkinstall -D
-
Danach die jeweiligen Fragen beantworten oder einfach die Default-Einstellungen übernehmen. Wichtig ist, dass die Frage nach dem Paketformat mit '''Debian''' beantwortet wird.  
+
Danach können die jeweiligen Fragen beantwortet oder einfach die Standard-Einstellungen übernommen werden. Wichtig ist, dass die Frage nach dem Paketformat mit '''Debian''' beantwortet wird.  
-
Das nach Ablauf des Programms entstandene Paket kann dann mit
+
-
sudo dpkg -i neues_paket
+
-
installiert werden.
+
Checkinstall kann auch mit der Option ''--install=no'' aufgerufen. Damit wird nur ein .deb-Paket erstellt. Das entstandene Paket kann dann folgendermaßen installiert werden:
 +
sudo dpkg -i ''neues_paket''.deb
-
[[Kategorie:Terminal]] [[Kategorie:System]]
+
[[Kategorie:Paketverwaltung]]

Aktuelle Version vom 12. Januar 2011, 14:16 Uhr

810.png 804.png 710.png 704.png

Idee.png Begriffserklärung Idee.png
Edit l.png Dieser Artikel bedarf einer Aktualisierung. Edit.png

Inhaltsverzeichnis


1 Allgemeines

Zunächst sollte erwähnt werden, dass Programme in Ubuntu immer mit Hilfe von APT installiert werden sollten, um die Konsistenz des Systems nicht zu gefährden. Sollte es jedoch einmal notwendig sein, Programme aus dem Quellcode zu installieren, müssen in Ubuntu einige Vorarbeiten geleistet werden.

2 Systemvoraussetzungen

Aus irgendwelchen Gründen werden Header-Dateien, die für den Kompiliervorgang notwendig sind, nicht in die Standardinstallation integriert. Es muss mindestens noch das Paket libc6-dev nachinstalliert werden:

sudo apt-get install libc6-dev

Wer auf der sicheren Seite sein möchte, sollte sich:

sudo apt-get install build-essential

installieren, ein Metapaket, dass so ziemlich alle brauchbaren und zum Kompiliervorgang benötigten (inklusive libc6-dev) Pakete enthält.

Eventuell müssen noch die Header-Dateien der jeweiligen Arbeitsumgebung installiert werden, wenn für diese Applikationen gebaut werden sollen:

KDE
sudo apt-get install kdebase-dev
GNOME
sudo apt-get install gnome-core-devel
Kernel

Sollen Module für den Kernel kompiliert werden, müssen noch die entsprechenden Kernel-Header installiert werden

sudo apt-get install linux-headers-generic

3 Kompiliervorgang

3.1 Herunterladen und Entpacken

Das heruntergeladene Paket des zu installierenden Programms muss dann noch entpackt werden:

unp file_name.tar.gz

bzw.

tar xfvz  file_name.tar.gz

und in das neu entstandene Verzeichnis gewechselt werden:

cd  file_name

3.2 Installieren

Danach muss der Linux-Dreisatz ausgeführt werden:

./configure
make
sudo make install

Sollte configure mit einer Fehlermeldung abbrechen, so liegt das meist daran, dass noch andere Pakete, die das neue Programm zum Ausführen benötigt, nachinstalliert werden müssen. Der genaue Grund und das eventuell nachzuinstallierende Paket, steht meist in der Fehlermeldung.

Das kompilierte Paket kann auch vor der Installation gestestet werden. Der nachfolgende Befehl simuliert lediglich eine Installation.

make installcheck

Der Nachteil der make install-Methode ist, dass so installierte Pakete nicht vom Ubuntu-Paketmanagement verwaltet werden können. Das macht eine spätere Deinstallation oder Aktualisierung komplizierter. Daher bietet es sich an, mit dem unten beschriebenen checkinstall ein .deb-File zu erzeugen.

3.3 Deinstallieren

Da diese Pakete nicht im Systemmanagement auftauchen, ist das Deinstallieren etwas mühselig.

Pakete, die mit:

sudo make install

installiert wurden können mit durch:

sudo make uninstall

Allerdings müssen dafür zwei Dinge gegeben sein:

  1. der Befehl zum Entfernen muss in exakt dem selben Verzeichnis, wie der Befehl zum Installieren abgesetzt werden.
  2. configure muss vorher durchlaufen werden.

Sollte dies nicht funktionieren, bleibt nur der Weg über händisches Löschen der einzelnen Dateien.

4 Checkinstall

Anstatt das Paket mit

sudo make install

zu installieren, kann mit checkinstall ein Debian-Paket erzeugt werden.

Installieren
sudo apt-get install checkinstall
Anwenden
./configure
make
sudo checkinstall -D

Danach können die jeweiligen Fragen beantwortet oder einfach die Standard-Einstellungen übernommen werden. Wichtig ist, dass die Frage nach dem Paketformat mit Debian beantwortet wird.

Checkinstall kann auch mit der Option --install=no aufgerufen. Damit wird nur ein .deb-Paket erstellt. Das entstandene Paket kann dann folgendermaßen installiert werden:

sudo dpkg -i neues_paket.deb
Meine Werkzeuge
Namensräume
Varianten
Aktionen
Forum
Navigation
Internes
Bearbeitungshilfen
Werkzeuge