Ich versuche, einen Mutt-Client auf meiner Slackware (14.2) zu erstellen und zu installieren. Ich folge dem Standardverfahren configure && make && make install
. Hier sind meine Fragen zu diesem Thema.
- Wie kann ich überprüfen, ob alle 3 Schritte (Konfigurieren, Erstellen, Installieren) richtig ausgeführt wurden? Habe ich Recht, dass ich den Standardfehler in eine Datei wie diese umleiten kann:
.configure 2> configure_errors.log
make 2> make_errors.log
und dann davon ausgehen, dass der entsprechende Schritt erfolgreich ist, wenn die entsprechende Datei leer ist (keine Fehler)?
- Was sind die Standardoptionen für das
configure
Skript? Ich kann eine Liste der Optionen mit ihrer Bedeutung finden, kann aber nicht herausfinden, welche die Standardoptionen sind. - Ich möchte Mutt im benutzerdefinierten Verzeichnis ($HOME/mutt) installieren, aber die
--prefix
Option scheint nicht zu funktionieren. Wenn ich etwas--prefix=$HOME/mutt
zumconfigure
Skript hinzufüge, wird Mutt letztendlich nur in dem Verzeichnis installiert, aus dem ich das Skript ausgeführt habe (das ist das Verzeichnis, in dem es entpackt wurde). Mein$HOME/mutt
Verzeichnis ist leer.
Antwort1
1) Wenn Sie nicht sicher sind, ob es fehlerfrei funktioniert, ist die übliche Vorgehensweise (oder zumindest meine Vorgehensweise), alle Schritte einzeln auszuführen und nur die Terminalmeldungen anzusehen.
Führen Sie also aus configure
, beobachten Sie, wie es sich über fehlende Bibliotheken beschwert, installieren Sie Pakete für die fehlenden Bibliotheken, führen Sie den Vorgang configure
erneut aus usw., bis es erfolgreich ist. Führen Sie dann aus make
, beheben Sie Fehler in den Quelldateien, falls erforderlich (hoffentlich nicht). Führen Sie abschließend aus make install
, falls erforderlich als Root.
Das Umleiten von Standardfehlern in Protokolldateien klingt unnötig kompliziert, normalerweise erkennt man das Problem sofort. Und das Terminal kann nach oben gescrollt werden. Ich bin noch nie auf ein Problem gestoßen, bei dem ich das hätte tun müssen, obwohl ich mir gelegentlich das ausführliche Protokoll angesehen habe, das configure
von sich aus erstellt wird (weil es die Testprogramme enthält, die es zu kompilieren versucht), wenn ich anhand der Fehlermeldung nicht genau herausfinden konnte, was falsch war.
2) Ich glaube nicht, dass es eine Möglichkeit gibt, Standardeinstellungen zu finden. Sie können sich usw. ansehen, configure.in
um Makefile.am
eine Vorstellung davon zu bekommen, was passiert, wenn eine bestimmte Option nicht klar ist. Mit welcher Option haben Sie Probleme?
3) Generell empfehle ich für selbst kompilierte Software die Installation in /usr/local
, stow
wie zB beschriebenHier. Die Installation in Unterverzeichnisse von $HOME
funktioniert nur, wenn Sie keine Bibliotheken oder andere Dinge installieren, die in /usr/local
den meisten Teilen des Systems bereits vorhanden sind, da die Suchpfade dafür standardmäßig vorhanden sind.
Leider handhabt jede Software die Installation ein wenig anders, sogar mit Autotools, daher weiß ich nicht, warum sie nicht in das --prefix
Verzeichnis installiert wurde. Welche Meldungen haben Sie nach der Eingabe erhalten make install
? Sie sagen Ihnen normalerweise, wo versucht wird, alles zu installieren. Manchmal ignorieren Teile oder alle Dateien die verschiedenen Präfixe und werden woanders installiert, sodass Sie Änderungen vornehmen müssen Makefile.am
usw., damit es richtig funktioniert.