Benutzer-Werkzeuge

Webseiten-Werkzeuge


cool:linuxbrew
Alle Anleitungen in diesem Wiki beziehen sich auf Uberspace 6. Die Dokumentation für U7 findest du im neuen Manual. Im Lab findest du außerdem von Usern erstellte Anleitungen für verschiedene Projekte.

Uberspace 6 basiert auf CentOS 6, welches ab Ende 2020 keine Updates mehr bekommt. Wir raten dir, bis dahin auf Uberspace 7 umzuziehen. Eine Anleitung zum Umzug findest Du hier: uberspace2uberspace

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
cool:linuxbrew [2019/05/08 18:14]
uberspace
cool:linuxbrew [2020/04/14 16:43] (aktuell)
uberspace
Zeile 1: Zeile 1:
-===== Installation von Paketen im Userspace mit Linuxbrew ===== +Diese Anleitung ​ist obsoletda Uberspace 6 Ende 2020 ausläuft ​(siehe oben).
-Wie [[system:​toast]] ​ist Linuxbrew ein Paketmanagerder Software im Userspace für dich installiert. ​ Linuxbrew kommt ursprünglich aus der Mac-Ecke und hat dort den Paketmanager Macports abgelöst. Linuxbrew funktioniert unter Linux genau so wie auf dem Mac, mit einer Ausnahme: Die Pakete werden standardmäßig nicht nach ''/​usr/​local'' ​(dort hättest du ja ohnehin keine Schreibrechteinstalliert,​ sondern in das Verzeichnis ''​~/​.linuxbrew''​. Das ist für den Einsatz auf einem Uberspace natürlich optimal. Ausserdem heißt das Projekt inzwischen nicht mehr Homebrew sondern Linuxbrew.+
  
-<note tip>Im Gegensatz zu toast kann Linuxbrew nicht sämtliche Software aus jeder Quelle installieren. Es benötigt Meta-Informationen,​ die als Formeln bezeichnet werden. Wenn du dich damit aber nicht beschäftigen möchtest und stattdessen "auf gut Glück"​ lieber einen Tarball aus einer beliebigen Quelle kompilieren möchtest, so sollte [[system:​toast]] das Werkzeug deiner Wahl sein.</​note>​ 
- 
-==== Installation ===== 
-Zuerst klonst du das git-Repository:​ 
- 
- [abigail@deathspell ~]$ git clone https://​github.com/​Linuxbrew/​brew.git ~/​.linuxbrew 
- 
-Daraufhin fügst du zwei Zeilen deiner .bashrc hinzu, damit via Linuxbrew installierte Software auch bevorzugt aufgerufen wird und du die zusätzlich installierten MAN- und INFO-Pages lesen kannst: 
- 
- [abigail@deathspell ~]$ echo "​PATH=\"​$HOME/​.linuxbrew/​bin:​\$PATH\""​ >> ~/.bashrc 
- [abigail@deathspell ~]$ echo "​MANPATH=\"​$HOME/​.linuxbrew/​share/​man:​\$MANPATH\""​ >> ~/.bashrc 
- [abigail@deathspell ~]$ echo "​INFOPATH=\"​$HOME/​.linuxbrew/​share/​info:​\$INFOPATH\""​ >> ~/.bashrc 
- [abigail@deathspell ~]$ echo "​HOMEBREW_BUILD_FROM_SOURCE=1"​ >> ~/.bashrc 
-  [abigail@deathspell ~]$ echo "​export HOMEBREW_NO_ENV_FILTERING=1"​ >> ~/.bashrc 
- 
-<​note>​Der zusätzliche '':''​ am Anfang des ''​$MANPATH''​s sorgt dafür, dass [[https://​github.com/​Linuxbrew/​brew/​issues/​65|System-Manpages weiterhin verfügbar sind]].</​note>​ 
- 
-Die Änderungen in der ~/.bashrc aktivierst du, indem du deine Shell anweist, deine ''​~/​.bashrc''​ neu einzulesen: ​ 
- 
- [abigail@deathspell ~]$ source ~/.bashrc 
- 
-==== Anwendung ==== 
-Linuxbrew für Linux rufst du mit dem Befehl ''​brew''​ auf. Das listet dir auch gleich auf, welche Parameter dir zur Verfügung stehen. Hier eine kleine Auswahl sinnvoller Parameter für den Alltag: ​ 
- 
-Software installierst du mittels: ​ 
- 
-   ​[abigail@deathspell ~]$ brew install $paket 
-  
-Benötigst du eine zuvor installierte Software nicht mehr, so kannst du sie wieder löschen: ​ 
-      
-   ​[abigail@deathspell ~]$ brew remove $paket 
- 
-Informationen zu bestimmten Paketen findest du mittels ​ 
- 
-   ​[abigail@deathspell ~]$ brew info $paket 
- 
-Wenn du erstmal herausfinden willst, ob ein bestimmtes Paket für Linuxbrew verfügbar ist:  
- 
-   ​[abigail@deathspell ~]$ brew search $paket ​ 
-  
-Brew kann sowohl sich selbst als auch sämtliche installierten Pakete upgraden: 
- 
-   ​[abigail@deathspell ~]$ brew update && brew upgrade 
-  
-Du kannst überprüfen,​ ob sämtliche mit Linuxbrew installierte Software ohne Fehler installiert wurde:  ​ 
- 
-   ​[abigail@deathspell ~]$ brew doctor 
-  
-Mehr dazu findest über den help-Parameter oder in der Manpage von brew:  
- 
-   ​[abigail@deathspell ~]$ brew help 
-   ​[abigail@deathspell ~]$ man brew 
- 
-<note tip>Wie du eigene Formeln schreibst, findest du in der [[https://​github.com/​Linuxbrew/​Linuxbrew/​blob/​master/​share/​doc/​Linuxbrew/​Formula-Cookbook.md#​formula-cookbook|Dokumentation]] von Linuxbrew.</​note>​ 
- 
-==== Probleme ===== 
- 
-=== Python === 
- 
-Wenn ihr beim brauen in den folgenden Fehler lauft ... 
- 
-<code bash> 
-error: option --no-user-cfg not recognized 
-</​code>​ 
- 
-... ist die installierte Python-Version zu alt und ein ... 
- 
-<code bash> 
-[abigail@deathspell ~]$ brew install python 
-</​code>​ 
- 
-... hilft weiter. 
- 
- === gcc (und weitere Compiler) werden nicht gefunden === 
-Linuxbrew bemängelt, dass es nicht weiß, ob der Compiler gcc installiert ist, weil es diesen nicht ''​~/​.linuxbrew''​ finden kann. Aktuell sind daher noch zwei Symlinks nötig, wenn du ''​gcc''​ voraussetzende Software aus dem Quellcode installieren möchtest (brew kommt momentan noch nicht mit ''​gcc''​ 5 klar, daher nehmen wir einfach Version 4): 
- 
- [abigail@deathspell ~]$ ln -s /​package/​host/​localhost/​gcc-4.9/​bin/​gcc ~/​.linuxbrew/​bin/​gcc-4.9 
- [abigail@deathspell ~]$ ln -s /​package/​host/​localhost/​gcc-4.9/​bin/​g++ ~/​.linuxbrew/​bin/​g++-4.9 
- 
-Wo wir schonmal dabei sind, solltest du dir hier auch direkt den ''​$PATH''​ und den ''​$LD_LIBRARY_PATH''​ von ''​gcc''​ 4.9 in deine ''​.bashrc''​ eintragen. Wie das geht, haben wir [[development:​gcc|hier]] beschrieben. 
- 
-Danach klappt'​s aber auch mit der Installation von Software die mit ''​gcc''​ kompiliert wird. 
- 
-=== git version zu alt === 
- 
-Wenn ihr beim brauen Probleme bekommt und ''​brew doctor''​ euch auf ein zu altes git hinweist: ​ 
- 
-<code bash> 
-Warning: An outdated version (1.7.1) of Git was detected in your PATH. 
-Git 2.7.0 or newer is required for Homebrew. 
-Please upgrade: 
-  brew install git 
-</​code>​ 
- 
-Dann hilft Euch folgendes weiter: ​ 
- 
-<code bash> 
-[abigail@deathspell ~]$ echo "​export HOMEBREW_NO_ENV_FILTERING=1"​ >> ~/.bashrc && source ~/​.bashrc ​ 
-</​code>​ 
- 
-Das überzeugt brew das git 2.7.4 aus ''/​usr/​local/​bin/''​ zu nehmen anstatt sich über das 1.7.1 aus ''/​usr/​bin/''​ zu beschweren. ​ 
  
cool/linuxbrew.txt · Zuletzt geändert: 2020/04/14 16:43 von uberspace