Intentando instalar herramientas de línea de comandos sin Xcode

1

En el pasado solía ser fácil instalar CommandLineTools sin Xcode. Ahora no puedo conseguir que se instale correctamente. Tenga en cuenta: esta no es una pregunta de desarrollo sino una pregunta de instalación de software.

Hay muchas discusiones sobre temas similares, pero ninguna es exactamente lo que estoy viendo.

Una respuesta breve a mi pregunta sería "ya no es posible ejecutar CommandLineTools a menos que se instale Xcode completo". Espero que ese no sea el caso.

He probado muchas variaciones en todos los pasos sugeridos, junto con intentos de desinstalación limpia y reinicio. He recogido muchos pasos de las siguientes fuentes:

Y probablemente más páginas que no grabé.

Instalé Xcode, lo desinstalé, instalé y desinstalé CommandLineTools independiente, usé xcode-select --switch, y más, todo en varias combinaciones.

El resultado es que cuando Xcode completo no está instalado, al intentar ejecutar un comando, aparece el siguiente mensaje de error o similar, dependiendo del comando:

  

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

Con Xcode completo, los comandos funcionan.

En muchos lugares de los hilos mencionados anteriormente, las personas se quejan de tener que tener 6GB de código no deseado; esto ya no es incorrecto La versión actual de Xcode ahora es de 10 GB.

Mi uso principal de CommandLineTools es para admitir MacPorts. Como beneficio adicional, me gusta el opendiff en algunos casos donde mis herramientas principales están más lejos de su alcance.

¿Hay una solución a este problema?

EDITAR: veo que Apple ahora proporciona una forma directa de instalar las herramientas de líneas de comando solo como Command_Line_Tools_macOS_10.13_for_Xcode_9.4, pero es solo para High Sierra. Si bien todavía estoy pendiente de la actualización a HS, solo pasará muy poco tiempo antes de realizar esta actualización. Esperando que sea la línea de menor resistencia.

    
pregunta Jeffrey Simon 21.09.2017 - 02:29

3 respuestas

1

No creo que haya una solución, ya que opendiff llama al programa GUI FileMerge que se envía con Xcode.

Le gustaría usar otra herramienta de diferencias, tal vez las herramientas gnu de homebrew o mi herramienta de diferencias de pago favorita que tiene una herramienta de línea de comandos - ksdiff de Kaleidoscope .

Es una fuente inagotable de bondad GUI para cuando las opciones de la línea de comandos no superan la tarea que necesita realizar.

    
respondido por el bmike 21.09.2017 - 02:51
1

Puede probar la solución desde aquí: secuencia de comandos Github para instalar herramientas de Xcode 3.2.6

Usé esto para tener FileMerge.app sin Xcode y funciona incluso en High Sierra.

    
respondido por el keramzyt 04.01.2018 - 09:47
0

Pasé más de 3 horas solucionando problemas con osx 10.14

$ sudo -s
$ touch /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress;
PROD=$(softwareupdate -l |
  grep "\*.*Command Line" |
  head -n 1 | awk -F"*" '{print $2}' |
  sed -e 's/^ *//' |
  tr -d '\n')
softwareupdate -i "$PROD" --verbose;
    
respondido por el Tran Minh Tuan 10.06.2018 - 15:30

Lea otras preguntas en las etiquetas