Wie installiere ich die Xcode-Befehlszeilentools neu?


14

Ich hatte ernsthafte Probleme mit zwei Versionen von Xcode auf demselben Computer. Ich habe alle Xcode-App-Instanzen und viele andere nicht mit System Xcode zusammenhängende Dateien entfernt und dann die App (4.6.2) neu installiert, um mein ursprüngliches Problem zu beheben. Aber xcodebuildund xcode-selectsind immer noch nicht verfügbar, was ich brauche, um PhoneGap für iOS auszuführen. In Xcode ist das Element Einstellungen => Downloads => Befehlszeilentools als "Installiert" markiert, ohne dass eine Option zum Löschen oder erneuten Installieren besteht. Ich habe versucht zu entfernen xcrun, aber das hat nicht funktioniert. Wie behebe ich das?

Antworten:


8

Die Befehlszeilentools werden wie andere OS X-Pakete installiert, daher müssen Sie möglicherweise die Belegdatei aus der Belegdatenbank löschen (was früher trivial war, da Sie die Datei aus / Library / Receipts löschen konnten, jetzt aber komplizierter ist und eine neue Datei benötigt) kurzer Artikel in der Belegdatenbank).

Warum nicht einfach das eigenständige Installationsprogramm herunterladen und auf eine neue Version von Xcode warten, um Ihre Belegdatenbank für Sie zu bereinigen?

Diese URL ist ziemlich offen (sogar die Suchmaschinen können sie indizieren), aber Sie müssen möglicherweise ein kostenloses Safari- oder Mac-Entwicklerkonto erstellen, um sich anzumelden und dieses Paket zu erhalten.

In diesem Fall ändere ich einfach meine Time Machine, um Systemdateien auszuschließen, und installiere dann ein neues Betriebssystem auf einem Ersatz-Volume. Ich würde einen Junk-Admin-Benutzer erstellen, den ich löschen und verwenden werde, um Xcode und die Befehlszeilentools zu installieren und dann endgültig von Time Machine wiederherzustellen. Solange alles funktioniert hat, würde ich das auf mein Hauptlaufwerk klonen oder den Lösch- / Neuinstallationsvorgang wiederholen - je nachdem, was für Sie einfacher ist.


Ich habe vergessen zu erwähnen, dass ich das versucht habe. xcodebuild ist in ausführbaren Standardverzeichnissen immer noch nicht verfügbar. Es gibt eine in Xcode.app/Contents/Developer/usr/bin/xcodebuild.
Sierra

xcrunwird Ihren Pfad optimieren, wenn Sie mehrere Toolsets installiert haben. Sie könnten nur mvdiese Binärdateien in / usr / bin speichern, wenn Sie eine schnelle Lösung wünschen. Wieder mit WWDC läuft, wie ich dies
tippe

Vielen Dank. Schlagen Sie vor, alle Dateien aus diesem Verzeichnis zu kopieren?
Sierra

Hier ist eine Paste von / usr / bin von einem sauberen Mac mit den neuesten Befehlszeilentools. Sie können es mit Ihrem Eintrag (ls -la / usr / bin) cl.ly/PYyh vergleichen, um zu sehen, was kopiert werden muss und was Apple im Ordner Xcode.app / Developer zurückgelassen hat.
bmike

Keine Würfel: $ xcodebuild dyld: Bibliothek nicht geladen: @ rpath / DVTFoundation.framework / Versions / A / DVTFoundation Referenziert von: / usr / bin / xcodebuild Grund: Bild nicht gefunden Trace / BPT-Trap: 5
Sierra

6

Hast du xcode-select ausprobiert ?

man xcode-select

oder

xcode-select --switch /Applications/Xcode

Nicht verfügbar. Ich habe es versehentlich entfernt und es bei der Neuinstallation der Befehlszeilentools nicht zurückerhalten.
Sierra

5
  1. ich renne sudo rm -rf /Library/Developer/CommandLineTools
  2. und dann xcode-select --install

Problem auf meiner Seite behoben


1
Dies ist der Weg, um es im Jahr 2020 zu tun.
Shadanan

einfach und effektiv - hat perfekt funktioniert, danke!
GarethD

1

Dies scheint für XCode 5 zu funktionieren, entfernen --dry-run, um das Kopieren tatsächlich durchzuführen.

sudo rsync -ai --exclude subversion\* --exclude SVN\* /Applications/Xcode.app/Contents/Developer/usr /
sudo ln -sf /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild /usr/bin/

Oder gehen Sie zu https://developer.apple.com/downloads/ und suchen Sie nach "xcode" - es gibt herunterladbare Pakete für 10.5 bis 10.10

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.