web-dev-qa-db-fra.com

Impossible d'utiliser xcodebuild sur Mavericks avec les outils de ligne de commande installés

J'ai installé les outils de ligne de commande:

$ xcode-select --print-path
/Library/Developer/CommandLineTools

Cependant, quand quelque chose essaie d'utiliser xcodebuild, j'obtiens l'erreur suivante:

$ /usr/bin/xcodebuild
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

Sur Mountain Lion, il était possible de l'utiliser sans installer l'ensemble de Xcode, plutôt que les outils de ligne de commande. Est-il possible de faire cela sur Mavericks? Comment puis-je le faire fonctionner?

N.B. Ceci est sur un installation propre de Mavericks.

pdate: Juste pour montrer, j'ai les outils de ligne de commande installés:

$ gcc --version
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-Apple-darwin13.0.0
Thread model: posix
92
user1082754

Je sais que c'est une réponse tardive, mais dans mon cas, cette commande a résolu le problème:

Sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
58
Juanan

Il semble que OSX ait modifié xcodebuild pour exiger que XCode soit installé, alors qu'avant, il fonctionnait correctement avec uniquement les outils de ligne de commande OSX installés.

Ancienne réponse semi-liée

Beaucoup de gens se sont heurtés à cela avec Node. L'outil de construction du nœud, gyp, utilise xcodebuild pour préparer la compilation des packages de nœuds. Mavericks a changé le comportement de xcodebuild afin qu'il ne fonctionne plus correctement avec gyp. Ceci est en train d'être corrigé pour le moment. Voir le problème node-gyp

Une fois que les modifications ont été déployées sur NPM, vous pourrez installer le nouveau node-gyp empaquetez et compilez correctement. Vous devrez également mettre à jour votre version de NPM une fois que les modifications auront été intégrées à NPM.

19
loganfsmyth

Allez d'abord dans le Finder, sélectionnez ensuite Applications dans le panneau de gauche, recherchez Xcode et vérifiez s'il s'appelle Xcode ou Xcode-Beta.

Si name est Xcode-Beta, entrez cette commande dans Terminal:

Sudo xcode-select -switch /Applications/Xcode-Beta.app/Contents/Developer

Si name est Xcode, entrez cette commande:

Sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

J'espère que cette réponse pourrait aider les utilisateurs de la version bêta de Xcode

Merci

15
Muhammed Irfan

Ce problème était dû à xcode-select répertoire du développeur pointant vers /Library/Developer, qui ne contenait que le dossier CommandLineTools. À cette fin, le message d'erreur indique que le répertoire n'est pas identique à Xcode.

Deux solutions testées:

  1. (Re) Installer Xcode.

  2. Pointez xcode-select sur le répertoire du développeur Xcode à l'aide de la commande suivante:

    Sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
    

Références:

Comment corriger une erreur telle que “xcode-select: erreur: l'outil 'xcodebuild' nécessite Xcode, mais le répertoire du développeur actif * LIEN BRISÉ *

erreur de répertoire de développeur actif avec xcode-select

10
carlodurso

J'ai réinstallé Xcode à partir de l'App Store, ce qui a résolu ce problème. Je suppose que mon installation précédente n'est pas une installation complète

1
zinking

Aujourd'hui, j'avais ce problème et le problème était que j'utilisais une installation manuelle de xcode et que le fichier s'appelait Xcode8.3.2.app au lieu de Xcode.app. Renommer l'application a résolu le problème de la plainte de xcode-select. Cela semble indiquer que le nom d'application habituel figure sur son chemin de recherche, mais pas les variantes.

0
AnneTheAgile

Il existe également une interface graphique permettant de modifier le chemin des outils de ligne de commande dans Xcode> Préférences> Emplacements:

Xcode > Preferences > Locations

Je viens d'avoir ce problème après la mise à niveau vers Xcode 10.3 tout en conservant une copie plus ancienne de 10.2.1 dans un sous-dossier dans Applications. Lorsque j'ai ouvert ce panneau Emplacements, la sélection des outils de ligne de commande était vide, mais j'ai pu choisir entre les deux versions installées:

Command Line Tools selection dropdown

J'ai tendance à choisir l'option GUI si elle est disponible au lieu de copier dans les commandes Sudo de SO.

0
suite22

Si vous utilisez XCode2: Sudo xcode-select --switch/Applications/Xcode\2.app/Contents/Developer

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

0
turibbio