2011-01-14 21 views
48

Today I installiert, um die curl Formel via homebrew, aber nach der Installation (und Wiederbeschaffung des Shell) ich bemerkte, dass:Keg-only homebrew Formeln

% which curl 
/usr/bin/curl 

als eine Tatsache, die Ausgabe von brew install curl erklärte, dass es eine Keg-only Formel war, und dass, da curl bereits in OS X vorhanden war, es es nicht in Homebrew-Präfix verlinkte, da das unspezifizierte Probleme verursachen könnte.

Dann geht er besagt, dass

Im Allgemeinen gibt es keine Konsequenzen für Sie

Ich mag würde wissen:

  • Welche Art von Problemen genau?
  • Was ist der Zweck der Installation von Fass-only-Formeln über Homebrew? Wie kann es keine Konsequenzen geben, wenn das neu installierte Tool nicht in der PATH ist?
+0

Ich finde den Wortlaut der "im Allgemeinen gibt es keine Konsequenzen davon für Sie" Vorbehalt sehr verwirrend, besonders zu erwähnen "LDFLAGS" und "CPPFLAGS". Nahm mich eine Weile, um zu erkennen, dass es für alle Fass-nur-Formeln gedruckt ist. Die Absatzunterbrechungen verdeutlichen nicht, worauf sich die Nachricht bezieht. – duozmo

Antwort

55
  • Probleme: Wenn eine Homebrew-Anwendung auf dem Weg vor der Standard-OS-X-Version der gleichen gesetzt wird, wirklich etwas passieren könnte. Die häufigsten Probleme werden durch Unterschiede zwischen den in den beiden Versionen verfügbaren Befehlszeilenoptionen oder durch Unterschiede in der Bedeutung der Optionen verursacht. Bei Locken sind die Folgen vielleicht nicht so schlimm, aber für andere Anwendungen könnte man im schlimmsten Fall das Betriebssystem durchbrechen.
  • Fass nur: jetzt haben Sie zwei Versionen von curl! Das Standard-OS X und das Homebrew. Wenn Sie Features verwenden möchten, die nicht im Standard, sondern im Homebrew sind, können Sie dies tun, indem Sie das Homebrew Curl explizit aufrufen. Der genaue Weg hängt davon ab, wie Sie Homebrew eingerichtet haben. Da die neu installierte Version nicht im Pfad enthalten ist, ist es unwahrscheinlich, dass sie ein Problem verursacht, wenn sie nicht explizit aufgerufen wird.
+5

Könnte auch Probleme verursachen, wenn sie dynamisch verknüpft sind und eine neuere Version - die neuere Version .so könnte mit einer höheren Priorität als die ältere verknüpft werden und die älteren brechen, besonders wenn sie sehr unterschiedliche Versionen sind. –

+0

@Marc - ein guter Punkt! –

+2

Git ist bereits auf Mac OS X 10.8 installiert, aber die Git Homebrew-Formel ist nicht fass-only, d. H. Es fügt 'git' in den Pfad vor der Standard-OS X-Version ein." Ist das in Ordnung? – ma11hew28