Erreur de répertoire de développeur actif xcode-select

682

J'ai vu l'erreur suivante lors de l'exécution d'un npm installqui nécessitait node-gyp... mais pourrait être déclenchée par tout ce qui nécessite xcode-select.

xcode-select: erreur: l'outil 'xcodebuild' nécessite Xcode, mais le répertoire de développeur actif '/ Library / Developer / CommandLineTools' est une instance d'outils de ligne de commande

Quel est le problème?

tjmehta
la source
5
Fonctionne aussi pour YOSEMITE
tjmehta
12
Fonctionne aussi pour El Capitan
tjmehta
6
Fonctionne aussi pour Sierra
tjmehta
5
Fonctionne aussi pour High Sierra
tjmehta
6
Fonctionne aussi pour Mojave
Zohair

Réponses:

1291

Ce problème se produit lorsque le xcode-selectrépertoire du développeur pointait vers /Library/Developer/CommandLineTools, lorsqu'un Xcode normal complet était requis (se produit lorsque CommandLineTools est installé après Xcode)

Solution:

  1. Installez Xcode (obtenez-le sur https://appstore.com/mac/apple/xcode ) si vous ne l'avez pas encore.
  2. Acceptez les termes et conditions.
  3. Assurez-vous que l'application Xcode est dans le /Applicationsrépertoire (PAS /Users/{user}/Applications).
  4. Pointez xcode-selectsur le répertoire développeur de l'application Xcode à l'aide de la commande suivante:
    sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

Remarque: assurez-vous que le chemin de votre application Xcode est correct.

  • Xcode: /Applications/Xcode.app/Contents/Developer
  • Xcode-beta: /Applications/Xcode-beta.app/Contents/Developer
tjmehta
la source
@qodeninja Remplacez ensuite /Applications/Xcode5-DP4.apppar le chemin approprié, je suppose.
Max Nanasy
@MaxNanasy, je veux dire que c'est évident. Mais non, cela n'a pas fonctionné. J'ai dû désinstaller et réinstaller xcode pour qu'il fonctionne à nouveau
qodeninja
9
Avec la Xcode 6 Beta, cela a fonctionné. Merci! sudo xcode-select -switch /Applications/Xcode6-Beta.app/Contents/Developer/
jpincheira
1
Je n'avais pas besoin de faire l'étape 2. L'installation de Xcode était suffisante. :)
Ryan Heathcote
11
macOS High Sierra 10.13 , j'avais déjà installé Xcode 9.2 et rencontré le même problème après l'installation de carthage . Je viens de faire l'étape 4 et c'est tout!
RAM237
162

Autre solution pour ceux qui ne souhaitent pas installer Xcode:

  1. Installez les outils de ligne de commande (si vous ne l'avez pas déjà fait):

    xcode-select --install

  2. Modifiez le répertoire actif:

    sudo xcode-select -switch /Library/Developer/CommandLineTools

Cela a fonctionné pour moi (git).

Indamix
la source
23
Je préfère cette solution à l'installation de Xcode, mais il semble que vous ne puissiez plus télécharger xcode-selectd'Apple: cl.ly/image/2T0u2f2D471a/content
6
Je pense que j'ai déjà installé des outils de ligne de commande, donc cela ne résoudra rien.
6
Alors, est-ce que le seul moyen d'obtenir un utilitaire xcodebuildpour installer l'ensemble de Xcode? :-(
50
Cette réponse semble incorrecte . Le fait est que «xcodebuild» nécessite Xcode , c'est-à-dire une installation complète de Xcode, ni CommandLineTools. Le tester ici, passer à CommandLineTools n'arrête pas l'erreur, pas plus.
mikemaccana
21
Cette réponse n'est plus correcte. Depuis mai 2015, lorsque vous utilisez les outils de ligne de commande pour OSX 10.10 (Yosemite), la commande xcodebuild ne fonctionne plus sans xcode complet installé.
HipsterZipster
151

J'avais un problème lors de l'installation des packages à l'aide de npm. J'ai eu l'erreur: "sudo xcode-select -s /Applications//Xcode.app/Contents/Developer/"

Pour résoudre ce problème

  • J'ai ouvert Xcode.
  • Préférences
  • Emplacements
  • Sélection des outils de commande Lin: Xcode 6.1.1

Maintenant, lors de l'installation de packages avec npm, je n'obtiens plus d'erreurs.

jay.tech66
la source
1
Correction de la configuration de Robo VM.
Sensei
107

Xcode-> Préférences-> Emplacements-> outils de ligne de commande

capture d'écran

Sélectionnez l'option: Xcode 8.x

FranklinA
la source
1
Cliquez sur le lien et regardez l'image. La solution à ce problème n'est pas compliquée.
FranklinA
J'ai installé 8 versions de xcode qui font et émettent mais celle ci-dessus résoudra le mien. Vous êtes un
sauveur de
C'était la seule chose qui a fonctionné pour moi lorsque j'ai essayé d'avoir 2 versions de XCode installées. J'essayais de xcode-selectdire "erreur: répertoire de développeur invalide"!
mc01
C'était la solution dont j'avais besoin. Je ne sais pas pourquoi cette option Outils de ligne de commande n'a pas été définie. Mais une fois que je l'ai réglé, cela a résolu mon problème. Merci.
jdavis
50

Exécutez simplement sudo xcode-select -rce qui devrait réinitialiser automatiquement le chemin.

 -r, --reset
              Unsets any user-specified developer directory, so that the developer directory will be found via the default search mechanism. This command must  be
              run with superuser permissions (see sudo(8)), and will affect all users on the system.
chunkyguy
la source
me demande ce qui se passera si j'ai désinstallé xcode et suivi les étapes ci-dessus depuis que j'ai installé CLI après xcode. Est-ce que cela gâcherait mes projets d'application IOS existants?
Gel
Cela a fonctionné pour moi sur osx 10.14.4 avec xcode 11.3.1
Rafael Khan
10

Juste au cas où vous utilisez xcode beta:

sudo xcode-select -s /Applications/Xcode-Beta.app/Contents/Developer
Andrey Deineko
la source
9

Je devais exécuter cette première

sudo xcode-select --reset

puis

sudo xcode-select -switch /Library/Developer/CommandLineTools

et puis ça a marché.

Hamoonist
la source
5
Pour moi, le problème a été résolu après l'exécution de la première commande. L'exécution de la deuxième commande a de nouveau cassé les choses. Donc juste le premier (dans mon cas). Je vous remercie.
Nate
J'appuie cela, juste en exécutant le --resetproblème résolu
Peter Lamberg
7
  1. Téléchargez Xcode depuis l'App Store.

  2. Allez dans Préférences Xcode / Emplacements / CommandlineTools

    Il vous suffit de le définir sur la version Xcode. Il pointe automatiquement vers '/Application/Xcode.app'

Rahul Shenoy
la source
3

Installez Xcode depuis l'App Store. Après l'installation, exécutez xcodebuild avec les privilèges root, c'est sudo xcodebuild-à- dire et acceptez la langue. Après cela a npm install bcryptfonctionné comme un charme!

sandeepkohli
la source
3

Sans Xcode: créez un fichier /usr/local/bin/xcodebuildavec du contenu pour tricher XcodeSelect

  #!/bin/bash
  exit 0

chmod +x /usr/local/bin/xcodebuild

javamonk
la source
Je dois dire que j'ai des problèmes avec node-gyp pour une raison quelconque, xcodebuildlorsque je n'ai installé CLT que. Je préfère ne pas installer Xcode juste pour installer des extensions natives rien à voir avec le développement Mac et iOS, donc je suis très prêt à essayer cette technique pour simplement fermer l'erreur. Savez-vous s'il y a des répercussions à le faire? Je peux seulement imaginer que les nœuds-gyps appellent xcodebuildpour une raison, et en faisant exit 0cela, nous cassons la chaîne d'outils pour une construction donnée, mais je ne suis pas sûr, car je ne sais pas pourquoi il utiliserait xcodebuilddans le première place. Des idées?
alexrussell
1
J'ai essayé, cela n'a malheureusement pas fait de différence. Je ne veux vraiment pas installer XCode - c'est juste une BS marketing d'Apple pour vous forcer à l'installer.
Alex
2

Si vous utilisez Xcode beta, exécutez

sudo xcode-select --switch /Applications/Xcode-beta.app/Contents/Developer 

au lieu de

sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
M.Sobhy
la source
2

J'ai pu résoudre cette erreur sans installer l'application Xcode complète. Vous devez cependant avoir installé les outils de ligne de commande xcode.

D' ici :

  1. $ cd /usr/bin
  2. $ sudo mv xcodebuild xcodebuild.orig (Une sauvegarde juste au cas où)
  3. $ vim xcodebuild
  4. Collez ce qui suit:
#!/bin/bash
if [[ $1 == '-version' ]]; then
  echo "Xcode 10.2.1"
  echo "Build version 10E1001"
else
  /usr/bin/xcodebuild.bak $@
fi
  1. $ sudo chmod +x xcodebuild
JBis
la source
Bonne réponse. Je vous remercie également de faire référence à la source d'origine. :)
Monomeeth
1

XCode2: sudo xcode-select -s / Applications / Xcode \ 2.app/Contents/Developer

Faites attention au "\" pour échapper à l'espace

turibbio
la source
1

J'ai eu deux instances de Xcode installées xcode.app et xcode-beta.app Lorsque j'ai essayé de créer une construction avec netbeans, il m'a montré l'erreur "version prise en charge de xcode et outils de ligne de commande introuvable netbeans"

J'ai suivi les étapes suivantes:

  1. "xcode-select --print-path" est égal à "/Applications/Xcode.app/Contents/Developer"
  2. "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform" existe
  3. "xcodebuild -version" commence par "Xcode"

après 1, j'ai trouvé qu'il me dirigeait vers xcode-beta.app

voici donc la solution qui a fonctionné comme un charme:

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

Shashank Saxena
la source
1

Pour le contexte, nous sommes aujourd'hui le 28 janvier 2019 .

Sur mon Mac, j'ai fait deux choses pour résoudre ce problème:

  1. Exécutez la commande suivante dans votre terminal:
    sudo xcode-select --install

  2. Redémarrez votre Mac.

Jusqu'à ce que je redémarre l'ordinateur, le problème persiste dans mon Android Studio. Après le redémarrage, cela fonctionnait très bien. Notez également que je n'ai exécuté aucune --switchcommande comme d'autres le font. J'espère que ça aide.

Steve
la source
1

J'avais le même problème en haute sierra. l'exécution de la commande suivante l'a résolu npm explore npm -g - npm installe node-gyp @ latest

Luja Shrestha
la source
1
Cela a fonctionné pour moi, sauf que j'ai simplement réinstallénpm -g install node-gyp@latest
ty.
1

Veuillez suivre les étapes ci-dessous:

  1. La dernière version de Xcode peut être téléchargée à partir de https://developer.apple.com/xcode/download/
  2. Il sera téléchargé dans les 'Téléchargements' sauf indication contraire. Veuillez vous assurer de vérifier le chemin où vous avez téléchargé et extrait le Xcode
  3. Contrairement aux autres applications téléchargées, lors de l'extraction, Xcode ne donne pas la possibilité de le déplacer vers Applications
  4. Notez le XCODE-ACTUAL-LOCATION ou déplacez-le applications
  5. Remarque si vous avez téléchargé Xcode ou Xcode-beta

Sur la base de 4 et 5, exécutez l'une des commandes (ne les exécutez pas toutes sans lire la description ci-dessus):

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer
sudo xcode-select -s /[XCODE-ACTUAL-LOCATION]/Xcode.app/Contents/Developer
sudo xcode-select -s /[XCODE-ACTUAL-LOCATION]/Xcode-beta.app/Contents/Developer
Nikhil Maheshwari
la source
0
sudo xcode-select -s /Applications/Xcode 10.app/Contents/Developer

languoguangs-iMac:/ languoguang$ sudo xcode-select -s /Applications/Xcode 10.app/Contents/Developer
xcode-select: error: invalid argument '10.app/Contents/Developer'
Usage: xcode-select [options]

Print or change the path to the active developer directory. This directory
controls which tools are used for the Xcode command line tools (for example, 
xcodebuild) as well as the BSD development commands (such as cc and make).

Options:
  -h, --help                  print this help message and exit
  -p, --print-path            print the path of the active developer directory
  -s <path>, --switch <path>  set the path for the active developer directory
  --install                   open a dialog for installation of the command line developer tools
  -v, --version               print the xcode-select version
  -r, --reset                 reset to the default command line tools path
languoguangs-iMac:/ languoguang$ sudo xcode-select -s "/Applications/Xcode 10.app/Contents/Developer"

parce que mon nom Xcode dans l'application est "Xcode 10",

sudo xcode-select -s "/Applications/Xcode 10.app/Contents/Developer"

travaux.

Languoguang
la source
0

Dans mon cas,

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer 

n'a pas fonctionné parce que mon Xcode avait un nom spécial. par exemple) Xcode_11.2.0_beta_2_stackoverflow.app

cd /applications
ls

Ensuite, j'ai trouvé mon nom Xcode, puis le remplacer par

sudo xcode-select -s /Applications/{myXcodeName}.app/Contents/Developer 

Ça a marché pour moi.

Jaeseok Jay An
la source
0

Rien de ce qui précède n'a fonctionné pour moi. J'ai à l'origine installé les outils de ligne de commande séparément, puis tout Xcode. Ce qui a fonctionné pour moi a été de désinstaller les outils de ligne de commande comme indiqué ici . Ensuite, lorsque vous essayez d'exécuterxcode-select nouvelle , on m'a demandé de les réinstaller.

* Soit dit en passant, la raison même pour laquelle j'ai trouvé ce fil était parce que j'avais installé certaines bibliothèques (en particulier gcc) avec macports, probablement en utilisant les anciens outils de ligne de commande, puis j'ai installé l'intégralité du Xcode à mi-chemin dans le développement. Donc, de toute façon, pour mon cas, j'ai dû réinstaller macportsaprès avoir supprimé les outils de ligne de commande autonomes, les réinstaller, réinstaller gcc, puis ma compilation a fonctionné.

legel
la source
0

Il n'y a que deux étapes requises et le XCode.app complet n'est pas du tout requis:

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install

À ce stade, la boîte de dialogue "Installation de Softwre" apparaît:

entrez la description de l'image ici

C'est ça!

Mark Richman
la source
0

Réinstallation simple de xcode-select

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install
Semir Hodzic
la source