15 votos

ERROR: 'xcodebuild' requiere Xcode

OBSERVACIONES

No esperaba que el comando devolviera un error:

/usr/bin/xcodebuild -version ( Referencia ) devuelve un error:

xcode-select: error: la herramienta 'xcodebuild' requiere Xcode, pero está activa directorio del desarrollador '/Library/Developer/CommandLineTools' es una instancia de línea de comandos

ls -l /usr/bin/xcodebuild devoluciones:

-rwxr-xr-x 1 Root wheel 31488 May 27 19:37 /usr/bin/xcodebuild

xcodebuild -version devoluciones:

xcode-select: error: la herramienta 'xcodebuild' requiere Xcode, pero el directorio de desarrolladores activo '/Library/Developer/CommandLineTools' es una instancia de herramientas de línea de comandos

gcc --version devoluciones:

Configurado con: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/4.2.1 Apple clang versión 11.0.3 (clang-1103.0.32.62) Target: x86_64-apple-darwin19.5.0 Modelo de hilo: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin

PREGUNTAS

¿Por qué se devuelve un error en la primera observación y qué soluciones existen?

¿Cómo puedo probar (sin instalar nada para determinar si tengo el problema descrito aquí ?

Me preocupa que cambiar el directorio activo

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

causará problemas con Brew u otras aplicaciones instaladas. Aunque parece que mi directorio activo y el cambio sugerido es el mismo.

ACTUALIZACIONES

$ ls -l /Applications/
total 0
drwxr-xr-x  4 user  admin  128 Jul 26 00:06 Polyspace
drwxr-xr-x@ 3 root  wheel   96 Apr 23 00:52 Safari.app
drwxr-xr-x@ 3 user  staff   96 Sep 30  2019 Sublime Text.app
drwxr-xr-x@ 3 user  staff   96 May 15 20:06 Transmission.app
drwxr-xr-x  4 root  wheel  128 May 27 19:31 Utilities
$ ls /usr/bin | grep -I Xcode
xcode-select
xcodebuild

0 votos

¿Cuál es el propósito de las actualizaciones que ha hecho a la pregunta? Además, parece que ya has encontrado la respuesta en stackoverflow.com/questions/17980759/ ¿Por qué le preocupa seguir los consejos que allí se dan?

0 votos

Gracias por la respuesta: Creo que Xcode fue instalado cuando instalé brew. Basándome en las actualizaciones creo que Xcode.app (¿superconjunto de Xcode?) no está instalado. Mi preocupación es que no quiero 'romper' lo que se ha hecho con brew. Espero que mis preocupaciones no estén justificadas.

1 votos

Xcode.app es Xcode, lo mismo que Safari.app es Safari.

26voto

Suponiendo que su Xcode.app está instalado en /Applications puedes simplemente ejecutar

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

para arreglar esto.

4voto

awy Puntos 500

¿Por qué se devuelve un error en la primera observación?

Porque xcodebuild ejecutable en /usr/bin no es útil sin la aplicación Xcode.

Me preocupa que cambiar el directorio activo... cause problemas con Brew u otras aplicaciones instaladas.

No, no es así. Cuando se instala Xcode, la configuración del xcode-select La ruta de acceso a la aplicación Xcode le ofrece más funciones: en particular xcodebuild que es necesario para hacer proyectos de Xcode desde cmake etc.

El paquete Command Line Tools instala las cabeceras del sistema MacOS dentro del SDK de MacOS. El software que se compila con las herramientas instaladas buscará las cabeceras dentro del SDK de MacOS proporcionadas por Xcode en: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk

o las herramientas de línea de comandos en:

/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk

dependiendo de cuál se seleccione mediante xcode-select. Las herramientas de línea de comandos buscarán en el SDK para las cabeceras del sistema por defecto.

Fuente: https://developer.apple.com/documentation/xcode-release-notes/xcode-10-release-notes

Así que no habrá ningún problema siempre y cuando la herramienta que te preocupa funcione con el SDK, y no dependa de unix-like /usr/include caminos.

Aunque parece que mi directorio activo y el cambio sugerido es el mismo.

En caso de duda, imprímalo:

xcode-select --print-path
xcode-select -p

Lee la página de manual: man xcode-select para más.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X