Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
admin_grundlagen:fish [2014/06/05 16:39] carsten_strotmann |
admin_grundlagen:fish [2015/11/05 18:01] (aktuell) stefan_miethke [Quellcode vorbereiten (autoconf)] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== FISH -- Freundliche Interaktive SHell ====== | ====== FISH -- Freundliche Interaktive SHell ====== | ||
+ | Beispiel für die Installation einer Software aus Quelltext | ||
- | git repository: [[https://github.com/fish-shell/fish-shell]] | + | ===== Benötigte Pakete ===== |
+ | ==== OpenSUSE 13.1 ==== | ||
+ | Per "zypper" installieren: ''git gcc gcc-c++ ncurses-devel python-curses automake autoconf make libtool'' | ||
===== Aus den Quellen übersetzen ===== | ===== Aus den Quellen übersetzen ===== | ||
- | |||
- | ==== OpenSUSE Abhängigkeiten ==== | ||
- | |||
- | Per "zypper" installieren: git, gcc, gcc-g++, ncurses-devel, python-curses, automake, autoconf, make | ||
- | |||
==== Quellcode per "git" laden ==== | ==== Quellcode per "git" laden ==== | ||
+ | git repository: [[https://github.com/fish-shell/fish-shell]] | ||
- | bash> mkdir ~/source | + | mkdir ~/source |
- | bash> cd ~/source | + | cd ~/source |
- | bash> git clone https://github.com/fish-shell/fish-shell.git | + | git clone https://github.com/fish-shell/fish-shell.git |
==== Quellcode vorbereiten (autoconf) ==== | ==== Quellcode vorbereiten (autoconf) ==== | ||
- | bash> cd fish-shell | + | cd fish-shell |
- | bash> autoreconf | + | autoreconf -i |
==== Quellcode für das eigene System konfigurieren ==== | ==== Quellcode für das eigene System konfigurieren ==== | ||
- | Wir möchten die FISH Shell nach ''/opt/fish'' installieren, so das sich die Software nicht mit anderen Dateien unserer Linux-Distribution stört. Alle Dateien werden um Verzeichnis ''/opt/fish'' installiert, hierdurch lässt sich die Software wieder einfach entfernen (wenn notwendig) und auch auf andere System kopieren. | + | Wir möchten die FISH Shell nach ''/opt/fish'' installieren, so das sich die Software nicht mit anderen Dateien unserer Linux-Distribution stört. Alle Dateien werden um Verzeichnis ''/opt/fish'' installiert. Hierdurch lässt sich die Software wieder einfach entfernen (wenn notwendig) und auch auf andere Systeme kopieren. |
Idealerweise würden wir statt einer Installation aus dem Quelltext ein RPM-Paket bauen. | Idealerweise würden wir statt einer Installation aus dem Quelltext ein RPM-Paket bauen. | ||
- | bash> ./configure --prefix=/opt/fish | + | ./configure --prefix=/opt/fish |
- | bash> make | + | make |
- | bash> sudo make install | + | sudo make install |
==== die FISH Shell starten ==== | ==== die FISH Shell starten ==== | ||
Zeile 34: | Zeile 33: | ||
Die FISH Shell unter ''/opt/fish'' befindet sich nicht im Suchpfad für ausführbare Programme. Wir müssen daher zum Starten den vollen Pfad angeben: | Die FISH Shell unter ''/opt/fish'' befindet sich nicht im Suchpfad für ausführbare Programme. Wir müssen daher zum Starten den vollen Pfad angeben: | ||
- | bash> /opt/fish/bin/fish | + | /opt/fish/bin/fish |
+ | <file> | ||
Welcome to fish, the friendly interactive shell | Welcome to fish, the friendly interactive shell | ||
Type help for instructions on how to use fish | Type help for instructions on how to use fish | ||
+ | </file> | ||
fish> help | fish> help | ||
+ | ==== die FISH Shell automatisch starten ==== | ||
+ | |||
+ | Die FISH Shell ist in der Shell-Programmiersprache nicht kompatibel mit der Linux-Standard Shell (BASH), daher sollten wir nicht die FISH direkt als login-shell eintragen (per ''chsh'' oder in der ''/etc/passwd''). Wir können aber die FISH Shell aus der BASH heraus starten, dafür die FISH Shell als letzten Befehl in der Datei ''~/.bashrc'' eintragen: | ||
+ | |||
+ | [...] | ||
+ | /opt/fish/bin/fish | ||
+ | | ||