Provided by: manpages-de_4.26.0-1_all 

BEZEICHNUNG
makepkg.conf - Konfigurationsdatei für makepkg
ÜBERSICHT
/etc/makepkg.conf, $XDG_CONFIG_HOME/pacman/makepkg.conf, ~/.makepkg.conf
BESCHREIBUNG
Konfigurationsoptionen für Makepkg werden in makepkg.conf gespeichert. Diese Datei wird eingelesen, so
dass Sie alle gewünschten besonderen Compiler-Schalter einbeziehen können. Dies ist beim Paketbau für
verschiedene Architekturen oder mit unterschiedlichen Optimierungen hilfreich. Jedoch werden nur die
nachfolgend beschriebenen Variablen in die Bauumgebung exportiert.
Hinweis
Dies garantiert nicht, dass alle Paket-Makefiles Ihre exportierten Variablen nutzen. Einige von ihnen
sind nicht standardisiert.
Die systemweite Konfigurationsdatei finden Sie in /etc/makepkg.conf. Bestimmte Ergänzungen (z.B.
Bauschalter für zusätzliche Sprachen) können in /etc/makepkg.conf.d/*.conf abgelegt werden.
Individuelle Optionen können benutzerbasiert in $XDG_CONFIG_HOME/pacman/makepkg.conf oder ~/.makepkg.conf
außer Kraft gesetzt (oder hinzugefügt) werden, wobei der erste Ort Priorität hat.
Die Standarddatei ist recht gut dokumentiert, so dass es einfach sein dürfte, anhand der dortigen
Anweisungen Anpassungen vorzunehmen.
OPTIONEN
DLAGENTS=('Protokoll::/Pfad/zum/Befehl [Optionen]' … )
gibt die Download-Agenten an, die zum Herunterladen der in einer URL in der Datei PKGBUILD(5)
angegebenen Dateien verwendet werden sollen. Für jeden Befehl können auch Optionen angegeben werden,
und für jedes Protokoll kann es einen Download-Agenten geben. Jegliche Leerräume in den
Optionsargumenten müssen maskiert werden, damit der Befehl nicht geteilt wird. Diverse Beispiele
finden Sie in der Standarddatei makepkg.conf.
Falls vorhanden, wird %u durch die Download-URL ersetzt. Anderenfalls wird die Download-URL an das
Ende des Befehls gesetzt. Falls vorhanden, wird %o durch den Namen der lokalen Datei ersetzt und die
Erweiterung ».part« hinzugefügt, wodurch Makepkg ermöglicht wird, unterbrochene Downloads
wiederaufzunehmen.
VCSCLIENTS=('Protokoll::Paket' … )
gibt die Pakete an, die zum Holen der Quelldateien aus Versionsverwaltungssystemen erforderlich sind.
Wenn solche nötig sind, überprüft Makepkg, ob diese installiert oder in den »depends«- oder
»makedepends«-Feldern im PKGBUILD aufgelistet sind.
CARCH="Architektur"
gibt Ihre Computerarchitektur an. Zulässige Werte sind Dinge wie »i686«, »x86_64« oder »ppc«. Dies
sollte automatisch bei der Installation festgelegt worden sein.
CHOST="Rechner"
gibt eine Zeichenkette wie »i686-pc-linux-gnu« an. Verändern Sie dies nicht, es sei denn, Sie wissen,
was Sie tun. In den meisten Fällen können Sie es auskommentieren, falls gewünscht.
CPPFLAGS="CPP-Schalter"
gibt die für den C-Präprozessor verwendeten Schalter an; siehe CFLAGS für weitere Informationen.
CFLAGS="C-Schalter"
gibt die für den C-Compiler verwendeten Schalter an. Dies ist ein grundlegender Teil der Verwendung
von Makepkg. Üblicherweise werden verschiedene Optionen angegeben, wobei die häufigste Zeichenkette
etwa so aussieht: »-march=i686 -O2 -pipe«. Eine weitere nützliche Option kann -mcpu anstelle von
-march sein. Lesen Sie gcc(1) für weitere Details zur Vielzahl der verfügbaren Compiler-Schalter.
CXXFLAGS="CXX-Schalter"
gibt die für den C++-Compiler verwendeten Schalter an; siehe CFLAGS für weitere Informationen.
LDFLAGS="LD-Schalter"
gibt die für den Linker verwendeten Schalter an. Verschiedene Optionen können angegeben werden, wobei
die häufigste Zeichenkette etwa so aussieht: »-Wl,--hash-style=gnu«. Lesen Sie ld(1) für weitere
Details zu den verfügbaren Linker-Schalter.
LTOFLAGS="LTO-Schalter"
gibt zusätzliche Compiler- und Linker-Schalter an, die an CFLAGS, CXXFLAGS und LDFLAGS angehängt
werden, wenn mit Linkzeit-Optimierung gebaut wird. Falls leer, wird -flto verwendet.
MAKEFLAGS="make-Schalter"
wird oft zum Angeben der Anzahl der verwendeten Jobs verwendet, zum Beispiel -j2. Andere von »make«
akzeptierte Schalter können ebenfalls angegeben werden.
DEBUG_CFLAGS="Debug-Schalter"
gibt zusätzliche Compiler-Schalter an, die an CFLAGS für Debugging-Zwecke angehängt werden.
Üblicherweise würde dies Folgendes beinhalten: »-g«. Lesen Sie gcc(1) für weitere Details zu den
zahlreichen verfügbaren Compiler-Schaltern.
DEBUG_CXXFLAGS="Debug-Cxx-Schalter"
gibt für den C++-Compiler verwendete Debug-Schalter an; siehe DEBUG_CFLAGS für weitere Informationen.
BUILDENV=(!distcc !color !ccache check !sign)
enthält Optionen, welche die Bauumgebung betreffen; die Voreinstellungen werden hier angezeigt. Alle
Optionen sollten stets im Feld verbleiben. Um eine Option zu aktivieren oder zu deaktivieren, fügen
Sie einfach ein »!« vor der Option hinzu oder entfernen es, wenn es bereits vorhanden ist. Wenn eine
Option mehrmals angegeben ist, dann hat der letzte Wert Vorrang. Jede der Optionen funktioniert wie
folgt:
distcc
verwendet den verteilten C/C++/ObjC-Compiler, um die Kompilierung über mehrere Maschinen zu
verteilen. Falls dies aktiviert ist, muss DISTCC_HOSTS ebenfalls angegeben werden.
color
färbt die Meldungen ein, wodurch die Ausgabe besser lesbar wird.
ccache
verwendet Ccache bei der Cache-Kompilierung standardmäßig. Dadurch wird eine schnellere
Kompilierung möglich, wenn Sie wiederholt die gleichen Pakete kompilieren. Dies kann für einzelne
Pakete deaktiviert werden, indem Sie »!ccache« in das »options«-Feld im PKGBUILD setzen.
check
führt die check()-Funktion aus, sofern diese im PKGBUILD vorhanden ist. Dies kann für einzelne
Pakete aktiviert oder deaktiviert werden, wenn Sie Makepkg mit den Optionen --check
beziehungsweise --nocheck aufrufen.
sign
erzeugt mittels GnuPG eine PGP-Signaturdatei. Dadurch wird gpg --detach-sign mit dem gebauten
Paket ausgeführt, um eine zugehörige Signaturdatei mit dem GPG-Agent zu erzeugen, sofern dieser
verfügbar ist. Die Signaturdatei erhält den vollständigen Namen des Pakets mit der Erweiterung
».sig«.
DISTCC_HOSTS="Rechner1 …"
Wenn Sie DistCC verwenden, können Sie hiermit eine durch Leerzeichen getrennte Liste von Rechnern
angeben, die im DistCC-Cluster laufen. Zusätzlich werden Sie Ihre MAKEFLAGS anpassen müssen.
BUILDDIR="/Pfad/zum/Verzeichnis"
Wenn dieser Wert nicht gesetzt ist, werden Pakete standardmäßig in den Unterverzeichnissen jenes
Verzeichnisses gebaut, aus dem Makepkg aufgerufen wird. Diese Option ermöglicht es, das
Bauverzeichnis in ein anderes Verzeichnis zu verlegen. Durch inkorrektes Setzen von $startdir in
einem PKGBUILD könnte der Bauvorgang mit dieser Option fehlschlagen.
GPGKEY=""
gibt einen Schlüssel an, der anstelle des Vorgabeschlüssels im Schlüsselbund zur GPG-Signierung
verwendet werden soll. Dieser kann mit der Makepkg-Option --key außer Kraft gesetzt werden.
OPTIONS=(!strip docs libtool staticlibs emptydirs …)
Dieses Feld enthält Optionen, welche die Paketierungsvorgaben beeinflussen. Sie sind äquivalent zu
Optionen, die in einem PKGBUILD enthalten sein können; die Vorgaben werden hier angezeigt. Alle
Optionen sollten stets in diesem Feld verbleiben und können bei Bedarf durch Hinzufügen oder
Entfernen eines Ausrufezeichens vor der Option deaktiviert oder aktiviert werden. Wenn eine Option
mehrfach angegeben wird, erhält der zuletzt angegebene Wert Vorrang. Jede Option funktioniert
folgendermaßen:
strip
Entfernt Symbole aus Programmen und Bibliotheken. Wenn Sie häufig einen Debugger bei Programmen
oder Bibliotheken verwenden, kann es hilfreich sein, diese Option zu deaktivieren.
docs
speichert die Dokumentationsverzeichnisse. Wenn Sie die Dokumentationsverzeichnisse löschen
wollen, geben Sie »!docs« im Feld an. Die betroffenen Verzeichnisse werden durch die Variable
DOC_DIRS bezeichnet.
libtool
Belässt Libtool-Dateien (.la) in Paketen. Geben Sie !libtool an, um diese zu entfernen.
staticlibs
belässt statische Bibliotheksdateien (.a) in Paketen Geben Sie !staticlibs an, um diese zu
entfernen (sofern es ein dynamisch gelinktes Gegenstück gibt).
emptydirs
belässt leere Verzeichnisse in Paketen.
zipman
komprimiert Handbuchseiten (man und info) mit gzip. Die betroffenen Verzeichnisse werden in der
Variable MAN_DIRS festgelegt.
purge
entfernt die in der Variable PURGE_TARGETS angegebenen Dateien aus dem Paket.
debug
fügt die benutzerdefinierten Debug-Schalter (DEBUG_CFLAGS, DEBUG_CXXFLAGS) zu den
korrespondierenden Bauschaltern hinzu. Wird dies in Verbindung mit der Option »strip« verwendet,
wird ein separates Paket gebaut, das die Debug-Symbole enthält.
lto
aktiviert den Paketbau mittels Linkzeit-Optimierung. Fügt die in LTOFLAGS angegebenen Schalter zu
CFLAGS, CXXFLAGS und CXXFLAGS hinzu (oder -flto, falls LTOFLAGS leer ist).
autodeps
aktiviert die automatische Ergänzung von Bibliotheken zu den Felder »depends« und »provides«. Die
Suchverzeichnisse werden über die nachfolgend definierte Variable LIB_DIRS gesteuert.
INTEGRITY_CHECK=(Überprüfung1 …)
gibt die auszuführenden Prüfungen zur Dateiintegrität an. Es können mehrere Prüfungen angegeben
werden, die sowohl die Erzeugung als auch die Prüfung beeinflussen. Gegenwärtig sind folgende
Optionen verwendbar: ck, md5, sha1, sha224, sha256, sha384, sha512 und b2.
STRIP_BINARIES="--strip-all"
gibt die beim Strippen von binären Programmen zu verwendenden Optionen an. Siehe strip(1) für
Details.
STRIP_SHARED="--strip-unneeded"
gibt die beim Strippen von gemeinsam genutzten Bibliotheken oder ausführbaren Programmen im
PIE-Format zu verwendenden Optionen an. Siehe strip(1) für Details.
STRIP_STATIC="--strip-debug"
gibt die beim Strippen von statischen Bibliotheken zu verwendenden Optionen an. Siehe strip(1) für
Details.
MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info} ...)
Wenn »zipman« im OPTIONS-Feld angegeben ist, weist diese Variable Makepkg an, wo nach komprimierten
Handbüchern (man- und info-Seiten) gesucht werden soll. Wenn Sie Pakete bauen, die sich in /opt
befinden, kann es sein, dass Sie das Verzeichnis zu diesem Feld hinzufügen müssen. HINWEIS: Fügen Sie
zum Verzeichnisnamen keinen führenden Schrägstrich hinzu.
DOC_DIRS=(usr/{,share/}{doc,gtk-doc} ...)
Wenn »!docs« im OPTIONS-Feld angegeben ist, weist diese Variable Makepkg an, wo nach zu entfernenden
Dokumentationsdateien zu schauen ist. Wenn Sie Pakete bauen, die sich in /opt befinden, kann es sein,
das Sie das Verzeichnis zu diesem Feld hinzufügen müssen. HINWEIS: Fügen Sie zum Verzeichnisnamen
keinen führenden Schrägstrich hinzu.
LIB_DIRS=(lib:usr/lib …)
Wenn »autodeps« und »debug« im OPTIONS-Feld angegeben sind, weist diese Variable Makepkg an, wo nach
Bibliotheken gesucht werden soll, die im vorhergehenden Feld hinzugefügt werden sollen. Das Format
ist »Präfix:Pfad«, wobei »provides« für Bibliotheken hinzugefügt werden, die im »Pfad« mit dem
angegebenen Präfix ergänzt gefunden werden.
PURGE_TARGETS=(usr/{,share}/info/dir .podlist *.pod...)
Wenn »purge« im OPTIONS-Feld angegeben ist, weist diese Variable Makepkg an, welche Dateien aus dem
Paket zu entfernen sind. Dies ist für Indexdateien nützlich, die von mehreren Paketen hinzugefügt
werden.
DBGSRCDIR="/usr/src/debug"
Wenn »strip« und »debug« im OPTIONS-Feld angegeben sind, weist diese Variable Makepkg an, wo
Quelldateien für installierte Programme platziert werden sollen. Die Programme werden in einer Weise
modifiziert, dass sie für den Suchpfad des Debuggers auf dieses Verzeichnis verweisen.
PKGDEST="/Pfad/zum/Verzeichnis"
Wenn dieser Wert nicht gesetzt ist, dann werden Pakete standardmäßig im aktuellen Verzeichnis
gespeichert (Ort des PKGBUILD(5)). Jedoch finden es viele Leute praktisch, alle Pakete an einer
Stelle zu speichern. Hier können Sie den Pfad zu dieser Stelle festlegen. Eine häufig verwendete
Stelle ist »/home/packages«.
SRCDEST="/Pfad/zum/Verzeichnis"
Wenn dieser Wert nicht gesetzt ist, dann werden heruntergeladene Dateien nur im aktuellen Verzeichnis
gespeichert. Jedoch finden es viele Leute praktisch, alle Quellpakete an einer zentralen Stelle zu
speichern, um das Aufräumen zu vereinfachen. Hier können Sie den Pfad zu dieser Stelle festlegen.
SRCPKGDEST="/Pfad/zum/Verzeichnis"
Wenn dieser Wert nicht gesetzt ist, dann werden Quellpaketdateien im aktuellen Verzeichnis
gespeichert. Jedoch finden es viele Leute praktisch, alle Quellpakete an einer zentralen Stelle zu
speichern, um das Aufräumen zu vereinfachen. Hier können Sie den Pfad zu diesem Ort festlegen.
LOGDEST="/Pfad/zum/Verzeichnis"
Wenn dieser Wert nicht gesetzt ist, werden Protokolldateien in das aktuelle Verzeichnis geschrieben.
Hiermit wird der Ort der Protokollierung zentralisiert, was Aufräumen und Kompression erleichtert.
PACKAGER="John Doe <john@example.com>"
Dieser Wert wird verwendet, wenn eine Paketabfrage den Paketbauer ermitteln soll. Das angegebene
Format ist für die PGP-Schlüsselsuche mittels WKD erforderlich. Es wird empfohlen, dies auf Ihren
Namen und Ihre E-Mail-Adresse zu ändern.
COMPRESSGZ="(gzip -c -f -n)", COMPRESSBZ2="(bzip2 -c -f)", COMPRESSXZ="(xz -c -z -)", COMPRESSZST="(zstd
-c -z -)", COMPRESSLZO"(lzop -q)", COMPRESSLRZ="(lrzip -q)", COMPRESSLZ4="(lz4 -q)", COMPRESSZ="(compress
-c -f)", COMPRESSLZ="(lzip -c -f)"
legt den Befehl und die Optionen für die Komprimierung von kompilierten oder Quellpaketen im
benannten Format fest.
PKGEXT=".pkg.tar.gz", SRCEXT=".src.tar.gz"
legt die beim Erstellen kompilierter oder Quellpakete verwendete Kompression fest. Zulässige Endungen
sind .pkg oder .src (für PKGEXT bzw. SRCEXT) gefolgt von einem aus .tar.gz, .tar.bz2, .tar.xz,
.tar.zst, .tar.lzo, .tar.lrz, .tar.lz4, .tar.lz und .tar.Z, oder einfach .tar, um die Kompression
gänzlich zu deaktivieren.
PACMAN_AUTH=()
gibt ein Befehlspräfix bei der Ausführung von Pacman mit Root-Rechten an. Falls nicht gesetzt, prüft
Makepkg zunächst, ob sudo(8) verfügbar ist, dann su(1), und versucht das, was zuerst gefunden wird.
Falls vorhanden, wird %c durch die Shell-maskierte Form des auszuführenden Befehls ersetzt.
Anderenfalls wird der auszuführende Befehl an den Authentifizierungsbefehl angehängt.
SIEHE AUCH
makepkg(8), pacman(8), PKGBUILD(5)
Auf der Pacman-Website finden Sie aktuelle Informationen zu Pacman und den zugehörigen Werkzeugen.
FEHLER
Fehler? Sie machen wohl Witze, es gibt keine Fehler in dieser Software. Nun ja, sollte unsere Annahme
doch falsch sein, berichten Sie diese (auf Englisch) in dem Fehlererfassungssystem unter
https://gitlab.archlinux.org/pacman/pacman/-/issues zusammen mit den konkreten Informationen wie Ihre
Befehlszeile, die Art des Fehlers und sogar der Paketdatenbank, falls das hilft.
AUTOREN
Derzeitige Betreuer:
• Allan McRae
• Andrew Gregory
• Morgan Adamiec
Bedeutende frühere Mitwirkende:
• Judd Vinet
• Aurelien Foret
• Aaron Griffin
• Dan McGee
• Xavier Chantry
• Nagy Gábor
• Dave Reisner
• Eli Schwartz
Informationen zu weiteren Mitwirkenden erhalten Sie, wenn Sie den Befehl git shortlog -s im
Git-Repositorium pacman.git aufrufen.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann@gmail.com>
und Helge Kreutzmann <debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die
Mailingliste der Übersetzer.
Pacman 7.0.0 20. Januar 2025 MAKEPKG.CONF(5)