Cercando di installare gli strumenti della riga di comando senza Xcode

1

In passato era facile installare CommandLineTools senza Xcode. Ora non riesco a farlo installare correttamente. Nota: questa non è una domanda di sviluppo ma un'installazione di domande software.

Ci sono molte discussioni su problemi simili, ma nessuno esattamente quello che sto vedendo.

Una risposta breve alla mia domanda sarebbe "non è più possibile eseguire CommandLineTools a meno che non sia installato Xcode completo". Spero che non sia il caso.

Ho provato molte varianti su tutti i passaggi suggeriti, insieme ai tentativi di disinstallare e ricominciare da capo. Ho raccolto molti passaggi dalle seguenti fonti:

E probabilmente più pagine che non ho registrato.

Ho installato Xcode, disinstallato, installato e disinstallato CommandLineTools standalone, usato xcode-select --switch, e altro ancora, il tutto in varie combinazioni.

Il risultato è che quando Xcode completo non è installato, quando si tenta di eseguire un comando, ottengo il seguente messaggio di errore o simile, a seconda del comando:

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

Con Xcode completo, i comandi funzionano.

In molti punti dei thread menzionati sopra, le persone si lamentano di dover avere 6 GB di codice indesiderato; questo non è più sbagliato. La versione corrente di Xcode è ora di 10 GB.

Il mio uso principale di CommandLineTools è di supportare MacPorts. Come bonus mi piace l'opendiff in alcuni casi in cui i miei strumenti principali sono più lontani.

C'è una soluzione a questo problema?

EDIT: vedo che Apple ora fornisce un modo diretto per installare gli strumenti delle righe di comando solo come Command_Line_Tools_macOS_10.13_for_Xcode_9.4, ma è solo per High Sierra. Mentre sono ancora in attesa dell'aggiornamento a HS, sarà solo un brevissimo tempo prima di eseguire questo aggiornamento. Sperando che questa sia la linea di minor resistenza.

    
posta Jeffrey Simon 21.09.2017 - 02:29
fonte

3 risposte

1

Non penso ci sia una soluzione dal momento che opendiff chiama il programma GUI FileMerge fornito con Xcode.

Vorresti utilizzare un altro strumento di diffusione - forse gli strumenti di GNU di homebrew o il mio strumento di diffusione a pagamento preferito che ha uno strumento da riga di comando - ksdiff da Kaleidoscope .

È una potenza della diffidenza della GUI quando le opzioni della riga di comando non riducono l'attività che devi svolgere.

    
risposta data 21.09.2017 - 02:51
fonte
1

Puoi provare la soluzione da qui: script Github per installare strumenti da Xcode 3.2.6

L'ho usato per avere FileMerge.app senza Xcode e funziona anche su High Sierra.

    
risposta data 04.01.2018 - 09:47
fonte
0

Trascorro oltre 3 ore risolvendo il problema 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;
    
risposta data 10.06.2018 - 15:30
fonte

Leggi altre domande sui tag