Homebrew, Xcode und die Command Line Tools [Update 2]

Als ich gestern auf meinem MacBook Air mosh mit Homebrew installieren wollte, moserte Homebrew über die veraltete Version von Xcode. Als ich dann ganz schlau sein wolltw, habe ich mir gepflegt ins Knie geschossen.   

Viele der mit Homebrew installierbaren formulae (Pakete) benötigen einen Compiler. Anders als beim Ansatz der (meisten) Linux-Distributionen werden bei Homebrew, wie auch bei MacPorts oder den ursprünglichen BSD Ports, keine fertig kompilierten Programme verteilt, sondern der C-Quellcode. Dieser wird erst auf der Ziel-Maschine kompiliert.

Um an den Compiler (und andere dazugehörige Tools) zu kommen, benötigt Homebrew & Co Apples Entwicklungsumgebung Xcode. Eigentlich, denn die benötigte Kommandozeilenversion der Tools ist bei den aktuelleren Versionen von Xcode nicht mehr enthalten, sondern müssen als Command Line Tools nach der Installation von Xcode von Apples Servern nachgeladen werden. (Xcode kann man über den Mac App Store beziehen und die Command Line Tools aus dem installierten Xcode heraus nachladen. Registrierte Entwickler können Xcode und die Command Line Tools auch einzeln herunterladen.)

Das eigentliche Xcode (d.h. die integrierte Entwicklungsumgebung sowie die Bibliotheken der Frameworks) wird von Homebrew (meist) nicht benötigt. Und mit Download-Größe von 1,6 GB ist es ein ziemlicher Brocken, der installiert noch mehr Platz beansprucht. Nichts was ich von den 128 GB meiner SSD im MBA abknapsen will. (Xcode selbst habe ich bisher nur benötigt, als ich den iPhone Tracker aus den heruntergeledenen Sourcen gebaut habe.)

Da die Command Line Tools mit ihren schlanken 113 MB Download völlig ausreichen, habe ich nur diese heruntergeladen und installiert.

Beim nächsten Start von Homebrew klagte dies wieder über die veraltete Version von Xcode. Auch eine erneute Installtion der Command Line Tools brachte nichts.

Ich hatte bereits mit dem Download des aktuellen Xcode 4.6.2 begonnen, nicht ohne vorher über die aus meiner Sicht irreführende Doku von Homebrew zu schimpfen, als mir ein Verdacht kam: Ich hatte tasächlich mal das vollständige Xcode 4.1 auf dem MBA inastalliert und was wäre, wenn…

Nachdem ich Xcode deinstalliert (wie das geht sollte man für die jeweilige Version googlen, weil es sich je nach Version und Art der Installation unterscheidet) und die Command Line Tools (sicherheitshalber) nochmal installiert hatte, war Homebrew zufrieden und tat sein Werk klaglos.

Bei der Prüfung, ob die aktuelle Version der Compiler-Tool-Chain installiert ist, scheint Homebrew zunächst nach Xcode zu suchen. Passt die Version nicht, dann erfolgt ein Abbruch mit obigem Fehler. Die vorhandenen aktuellen Command Line Tools werden dabei ignoriert.

Letztlich habe ich selbst Schuld an dem Problem gehabt. Ich wollte clever sein und den kurzen Weg gehen. Aber Abkürzungen sind nicht immer gut.

Daher: Wer für die Nutzung mit eim Port-System wie Homebrew von der dicken Xcode Vollinstallation auf die schlanken stand-alone Command Line Tools Lösung umsteigen möchte, sollte dies nicht im Rahmen einer “Updates” machen, sondern Xcode vorher entfernen.

Dann klappt es auch mit Homebrew.

Update (03.05.2013)

Die Command Line Tools reichen leider nicht immer aus. Als ich eben wry bauen wollte, beschwerte sich Homebrew:

A full installation of Xcode.app is required to compile this software.
Installing just the Command Line Tools is not sufficent.

Bei der Formular für wry handelt es sich nach Informationen von Tim Pritlove um ein Xcode-Projekt, dass gegen die Frameworks baut.

Also muss es manchmal doch die volle Packung Xcode sein.

Update 2 (04.05.2013)

Textliche Anpassungen und Ergänzung (Informationen von Tim Pritlove) im Hinblick auf das erste Update.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Kommentare abonnieren

Es erfolgt keine Weitergabe von Daten an externe Dienste wie WordPress.com.

eMail-Benachrichtigung bei weiteren Kommentaren.
Auch möglich: Abo ohne Kommentar.