43 votes

Installation des outils en ligne de commande Xcode

J'ai effectué une installation fraîche de macOS Mojave 10.14. Immédiatement après, j'ai installé Xcode Version 10.0 (10A255) depuis le Mac App Store.

Maintenant, je souhaite installer Homebrew qui nécessite l'installation des Xcode Command Line Tools. Je crois comprendre que l'installation de Xcode inclut également les Command Line Tools. Est-ce correct?

Selon cette réponse, j'ai vérifié si les Command Line Tools sont installés en exécutant:

xcode-select -p

ce qui a affiché le chemin du répertoire Developer comme suit:

/Applications/Xcode.app/Contents/Developer

Conformément à la réponse, j'ai également vérifié la valeur de retour en exécutant:

echo $?

ce qui a renvoyé 0.

J'ai également exécuté gcc et make et bash était capable de les localiser et de les exécuter.

Jusqu'à présent, je suis convaincu que les Xcode Command Line Tools sont installés. Maintenant, lorsque j'exécute:

xcode-select --install

Je reçois cette alerte:

Description de l'image

Quelle est la raison probable de cette disparité? Cela installera-t-il les Xcode Command Line Tools deux fois? Ou va-t-il écraser l'installation existante?

Selon ce que je comprends, les Xcode Command Line Tools peuvent être installés sans installer Xcode. De plus, d'après mon expérience précédente, si les Command Line Tools ne sont pas installés séparément de Xcode (en exécutant xcode-select --install), ils ne sont pas détectés par Homebrew, c'est-à-dire que lorsque vous exécutez brew config, la valeur de CLT: s'affiche comme N/A.

Voici l'image complète (jeu de mots pardonné):

Description de l'image

Bien que je parle dans le contexte de macOS Mojave, la question reste la même pour les versions antérieures de macOS.

Quelle est l'approche conseillée à adopter ici?

Remarque: Après avoir installé Xcode, je l'ai lancé, ai accepté l'accord de licence et l'ai laissé terminer son processus d'installation des outils supplémentaires (qui est une activité ponctuelle).

0 votes

Moi aussi, j'ai dû télécharger les outils .dmg séparément depuis download.developer.apple.com/Developer_Tools/… et installer les outils.

32voto

Steven Peters Points 2041

Apparemment, il existe une distinction entre les outils en ligne de commande installés pour être utilisés par Xcode et les outils installés pour une utilisation à l'échelle du système :

Pour ma machine, en exécutant xcode-select --install et en choisissant d'installer les outils à partir de la fenêtre qui est apparue, j'ai pu résoudre le problème. J'ai pu confirmer que cela avait été résolu en exécutant brew config et en voyant une entrée valide pour CLT :

macOS: 10.14-x86_64
CLT: 10.0.0.0.1.1535735448
Xcode: 10.0

1 votes

(commentaire pour le référencement) Je suis ici parce que mes commandes git échouaient. Cette réponse était la solution dont j'avais besoin pour faire fonctionner à nouveau les commandes git comme git branch etc.

1 votes

Vous pouvez également sélectionner une version de Xcode pour le CLT depuis les préférences de Xcode dans l'onglet Emplacement. Vous verrez de nombreuses références en ligne à un onglet "téléchargements", qui n'existe plus. Quelqu'un peut-il expliquer ce que cette sélection dans Xcode fait réellement? brew config confirme que j'ai le CLT installé, mais Qt se plaint que j'ai besoin de Xcode 5 (oui, 5, WTH). Apparemment, cette sélection de CLT a quelque chose à voir avec cela.

0 votes

@Oscar Je sais que je suis un peu en retard mais pour répondre à ta question : cela s'exécute xcode-select. La page de l'homme dit : "xcode-select contrôle l'emplacement du répertoire des développeurs utilisé par xcrun(1), xcodebuild(1), cc(1) et d'autres outils de développement Xcode et BSD. Cela contrôle également les emplacements recherchés par man(1) pour les pages de l'homme des outils de développement." Cela s'applique également aux shims comme /usr/bin/ar (qui ne sont pas réellement des liens symboliques, ils agissent plutôt comme xcrun ar).

27voto

Daniel Cimring Points 371

J'ai rencontré le même problème après la mise à jour vers Mojave. En cours d'exécution

xcode-select --install

a conduit à l'erreur

Impossible d'installer le logiciel car il n'est actuellement pas disponible depuis le serveur de mise à jour logicielle

Le téléchargement des outils en ligne de commande depuis developer.apple.com a enfin résolu le problème.

2 votes

Le lien était super utile developer.apple.com/download/more

1voto

Forcetti Points 111

J'ai rencontré un problème similaire en essayant d'installer certains packages Python (avec jsonnet comme dépendance), et j'ai trouvé une solution ici. Après avoir exécuté ;

xcode-select --install

Apparemment, vous devez toujours installer le package, ce que vous pouvez faire depuis le terminal ;

open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

Bien que Steven ait déjà répondu à votre question, j'espère que cela aidera quelqu'un!

1voto

davidcondrey Points 1578
# Installer les outils en ligne de commande en tant que dépendance pour Homebrew
xcode-select --install # Définit le chemin du répertoire de développement sur /Library/Developer/CommandLineTools

# Installer Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Installer Mas (interface en ligne de commande pour l'App Store Mac)
brew install mas

# Rechercher Xcode en affichant uniquement les 5 premiers résultats
mas search xcode | head -5
# Installer Xcode en utilisant l'ID de l'application
mas install 497799835 # L'ID de l'application pour Xcode affiché lors de la recherche

sudo xcode-select -r  # Réinitialiser le chemin du répertoire de développement pour le mettre sur Xcode /Applications/Xcode.app/Contents/Developer

#sudo xcodebuild -license

# Mettre à jour tous les logiciels Apple et accepter automatiquement toutes les licences et redémarrer si nécessaire
sudo softwareupdate --install --agree-to-license -aR

0 votes

Que montre ceci?

0 votes

Utiliser le CLI mas est un super astuce. +1 sans quelques modifications, la plupart des gens ne seront pas en mesure de bien l'utiliser, mais c'est une feuille de triche pratique

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X