Qt Creator - Proyecto ERROR: Xcode no está configurado correctamente. Es posible que deba confirmar el acuerdo de licencia ejecutando / usr / bin / xcodebuild

121

Acabo de instalar Qt 5.5 y estoy usando Qt Creator por primera vez en OS X. Cuando instalé Qt por primera vez, me dio un mensaje de error 'Xcode 5 no instalado' que pensé que era extraño (tengo el Xcode 7 beta) , pero la instalación se completó correctamente de todos modos.

Ahora, cuando inicio o abro un proyecto, aparece el error:

Proyecto ERROR: Xcode no está configurado correctamente. Es posible que deba confirmar el acuerdo de licencia ejecutando / usr / bin / xcodebuild.

Cuando corro /usr/bin/xcodebuilden la Terminal, obtengo lo siguiente:

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

No estoy seguro de qué tiene que ver Xcode con Qt Creator, a menos que tenga algo que ver con acceder a las bibliotecas para la compatibilidad multiplataforma, pero ¿hay alguna manera de solucionar este problema?

123
fuente
3
Nota: Para Qt 5.7.1 y Xcode 8.2.1, la respuesta de @ rudolf-ratusinski, sin embargo, funciona perfectamente. La respuesta aceptada no funciona.
Alexey Kamenskiy
La respuesta de @ rudolf-ratusinski todavía funciona en Xcode 11.2.1
AJC el

Respuestas:

275

> = Xcode 8

En Xcode 8, como dijo Bruce, esto sucede cuando Qt intenta encontrar xcruncuándo debería estar buscando xcodebuild.

Abre el archivo:

Qt_install_folder/5.7/clang_64/mkspecs/features/mac/default_pre.prf

Reemplazar:

isEmpty($$list($$system("/usr/bin/xcrun -find xcrun 2>/dev/null")))

Con:

isEmpty($$list($$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null")))

~> Xcode 8

Antes de Xcode 8, este problema se produce cuando se instalan herramientas de línea de comandos después de instalar Xcode. Lo que sucede es que Xcode-selectse señala el directorio de desarrolladores /Library/Developer/CommandLineTools.

Apunte Xcode-selectal directorio de desarrollador de Xcode correcto con el comando:

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

Confirme el acuerdo de licencia con el comando:

sudo xcodebuild -license

Esto le pedirá que lea el acuerdo de licencia.

Ingrese agreepara aceptar los términos.

123
fuente
44
Recibí el error xcode-select: error: directorio de desarrollador inválido '/Applications/Xcode.app/Contents/Developer'
Mohammed Rafeeq
14
No funciona para mí con Xcode 8. Acepté la licencia a través de estas instrucciones y sigo teniendo el mismo error.
Violet Giraffe
1
Gracias, con XCode 8 después de editar default_pre.prf ¡funciona!
Libor B.
11
Para aquellos que se preguntan dónde está la carpeta de instalación: dependerá de la configuración de su administrador de paquetes: / usr / local / Cellar / qt55 para Homebrew, / opt / local / libexec / qt5 (-mac) para macports.
yogodoshi
3
Con homebrew, después de instalar [email protected] (que se requiere para la gema capibara Rubí), encontré el correspondiente default_pre.prfarchivo en: /usr/local/Cellar/[email protected]/5.5.1/mkspecs/features/mac/default_pre.prf. También probé el enfoque de Rudolf Ratusiński, y aunque me superó el primer obstáculo, más tarde resultó en numerosos mensajes espurios que no recibí cuando usé este enfoque.
Ben Hocking
81

Si cambia el contenido de Qt_install_folder/5.7/clang_64/mkspecs/features/mac/default_pre.prf , funcionará solo para el kit de escritorio, no para el ej. simulador.

Una mejor manera es crear un enlace simbólico:

cd /Applications/Xcode.app/Contents/Developer/usr/bin/
sudo ln -s xcodebuild xcrun

para que no tenga que cambiar los archivos .prf para todos los objetivos.

Rudolf Ratusiński
fuente
1
Prefiero esta versión, por lo que parece menos desordenada que editar archivos cfg.
tjeden
3
Esto causa problemas más tarde cuando se invoca xcrun con parámetros no admitidos por xcodebuild (parámetro faltante -f).
mrAlmond
3
Parece un problema qt. Por lo tanto, considero más peligroso agregar un enlace sym duradero dentro de xcode distrib que cambiar un archivo qt conf que será reemplazado por Qt 5.7.1
ALoopingIcon
1
No hagas esto, arruina mi proyecto de aplicación de iPhone.
Chchwy
1
Voté esto demasiado pronto y lo bloqueé ... Me encontré con el problema del parámetro -f.
BuvinJ
26

Esto hará el truco:

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

Ejecuta esto en tu terminal.

Shnd
fuente
funciona en Xcode8 y es más fácil que los otros pasos. ¡Gracias!
Misha
Confirmado que funciona en macOS Sierra 10.12.4 con Xcode 8 - ¡Gracias!
Dylan Pierce
1
Esto todavía funciona en macOS High Sierra 10.13.5 con Xcode 9.4.1 - ¡Gracias!
d1jhoni1b
Confirmó que esto funciona en macOS Catalina 10.15.2 con Xcode 11.3.
RNickMcCandless
11

Para los usuarios de Xcode 8, hay otro problema. Vea aquí una solución temporal hasta que se lance Qt 5.7.1:

https://forum.qt.io/topic/71119/project-error-xcode-not-set-up-properly

Resumir:

Abra Qt_install_folder/5.7/clang_64/mkspecs/features/mac/default_pre.prfen un editor de texto y reemplace esto:

isEmpty($$list($$system("/usr/bin/xcrun -find xcrun 2>/dev/null"))))

con este:

isEmpty($$list($$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null")))
Bruce
fuente
4

Si construye Qt desde la fuente con XCode 8.x, debe cambiar el argumento "-find" en el archivo qt-everywhere-enterprise-src-5.7.0/qtbase/configureen la línea 551 para que se vea así:

if ! /usr/bin/xcrun -find xcodebuild >/dev/null 2>&1; then
Remik Ziemlinski
fuente
2

Lo solucioné instalando la versión completa de Xcode, aceptando los términos y luego usando xcode-select --reset.

Básicamente, el problema es que el xcode al que apunta /Library/Developer/CommandLineToolsno le permite aceptar los términos y condiciones. Entonces, después de instalar y restablecer la ubicación, todo debería estar bien

Ramses
fuente
0

Para mí, la única forma de trabajar correctamente es comentar las líneas sobre xcrun con el '#':

# Make sure Xcode is set up properly
#isEmpty($$list($$system("/usr/bin/xcrun -find xcrun 2>/dev/null"))): \
    #error("Xcode not set up properly. You may need to confirm the license agreement by running /usr/bin/xcodebuild.")

En el archivo: Qt_install_folder / 5.7 / clang_64 / mkspecs / features / mac / default_pre.prf

Marcelo
fuente
0

Solo para agregar un poco a muchas respuestas antiguas en el espíritu de "Esto funcionó para mí", descubrí que al iniciar Xcode, iniciar sesión en mi cuenta de desarrollador (solo una gratuita) y luego configurar las herramientas de comando en "Ubicaciones" . Podría conseguir el

'sudo / usr / bin / xcodebuild -licencia de acuerdo'

trabajar. es decir, lanzó un proceso de acuerdo en la línea de comandos y acepté después de leer detenidamente las 14 millones de páginas de cosas.

No tuve que editar nada.

Mi sistema es Mojave 10.14.6 y Xcode 10.3 (10G8).

nerak99
fuente