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


92

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

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

Cependant, lorsque 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'intégralité 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?

NB Ceci est sur une installation propre de Mavericks.

Mise à jour: juste pour montrer, j'ai installé les outils de ligne de commande:

$ 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

1
Je rencontre le même problème ici en essayant de construire des modules de nœuds. Espérons qu'une solution de contournement rapide soit disponible.
rossipedia

J'ai créé un problème node-gypcar c'est la source de mon problème: github.com/TooTallNate/node-gyp/issues/341

Vous devez peut-être installer Xcode. C'est à quoi ressemble ma --version gcc Configurée avec: --prefix = / Applications / Xcode.app / Contents / Developer / usr --with-gxx-include-dir = / Applications / Xcode.app / Contents / Developer / Platforms /MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 Apple LLVM version 5.0 (clang-500.2.79) (basé sur LLVM 3.3svn) Cible: x86_64-apple-darwin13. 0.0 Modèle de discussion: posix
Martin Christmann

1
Peut-être que vous avez raison, juste étrange que ce ne soit pas nécessaire sur Mountain Lion avec les outils de ligne de commande installés.

Je suppose que vous l'avez fait xcode-select --install. Avec Xcode xcode-select --print-pathimpressions installées/Applications/Xcode.app/Contents/Developer
mb21

Réponses:


64

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

14
notez que la question concerne la construction avec l'installation des outils de ligne de commande. En passant à Xcode.app, vous construisez via Xcode (ce que la question essaie d'éviter d'installer).
bryanmac

23

Il semble que OSX a changé xcodebuildpour exigerXCode d'être 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 ont rencontré cela avec Node. L'outil de construction de Node,, gyputilise xcodebuildpour préparer la compilation des packages de nœuds. Mavericks a changé le comportement de xcodebuildpour 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 les modifications déployées sur NPM, vous pourrez installer le nouveau node-gyppackage et le compiler correctement. Vous devrez également mettre à jour votre version de NPM une fois les modifications intégrées dans NPM.


Je ne sais pas pourquoi cela est lié au nœud, j'essaye de construire autre chose avec Xcode
zinking

exactement, toujours xcodebuild déclenche une erreur lorsque vous l'appelez à partir de la ligne de commande ... J'ai en fait téléchargé les derniers outils de ligne de commande à partir du site Web des développeurs
alexserver

16

Veuillez d'abord accéder au Finder, puis sélectionnez Applications dans le panneau de gauche, recherchez ensuite Xcode et vérifiez si son nom est Xcode ou Xcode-Beta

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

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

Si le nom 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 avec la version bêta de Xcode

Merci


9

Ce problème était dû au répertoire de développement xcode-select pointant vers /Library/Developer, qui ne contenait que le dossier CommandLineTools. À cette fin, le message d'erreur se plaint que le répertoire n'est pas le même que Xcode.

Deux solutions testées:

  1. (Re) Installez Xcode.

  2. Pointez xcode-select vers le répertoire des développeurs 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: error: l'outil" xcodebuild "nécessite Xcode, mais le répertoire actif des développeurs * BROKEN LINK *

Erreur d'annuaire de développeur actif xcode-select


Le lien 1 est rompu
anki

2

J'ai réinstallé Xcode depuis 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

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

Xcode> Préférences> Emplacements

Je viens d'avoir ce problème après la mise à niveau vers Xcode 10.3 tout en conservant une ancienne copie 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:

Liste déroulante de sélection des outils de ligne de commande

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


0

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

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


0

Aujourd'hui, j'ai eu ce problème et le problème était que j'utilisais une installation manuelle de xcode et que j'avais le fichier nommé Xcode8.3.2.app au lieu de Xcode.app. Le changement de nom de l'application a résolu le problème de la réclamation xcode-select. Cela semble indiquer que le nom d'application normal est sur son chemin de recherche, mais les variantes ne le sont pas.


-3

AFAIK, les outils de ligne de commande de Mavericks sont installés dans /Applications/Xcode.app/Contents/Developer, ce qui tend à impliquer que Xcode est requis. Fonctionnalité non documentée probablement.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.