Qual è la relazione tra gli strumenti da riga di comando Xcode e Xcode


17

Quando installo Xcode da App Store, posso compilare programmi in Xcode e anche riga di comando. Diverse utility a riga di comando come clang, makee gittutti diventano disponibili quando è installato Xcode.app. Quindi ho pensato che il pacchetto separato di strumenti da riga di comando è solo per coloro che non vogliono installare un IDE completo.

Ma con mia sorpresa, uno dei problemi di collegamento che ho riscontrato durante la compilazione di MacVim può essere risolto con successo installando gli strumenti da riga di comando xcode-select --install. Quindi apparentemente Xcode.app e gli strumenti della riga di comando differiscono, almeno in modi sottili. Qual è la differenza allora? Quest'ultimo ha una migliore copertura per tutti gli elementi essenziali per la programmazione rispetto al primo?

Attualmente sto usando Xcode 6.0.1 su Mavericks.

Risposte:


5

Puoi vederlo come:

  • Gli strumenti da riga di comando sono le basi di base. Sono necessari molti strumenti di base per compilare il codice Swift / Objective-C.
  • XCode è l'IDE che porta con sé alcuni pacchetti aggiuntivi.

Quindi gli strumenti della riga di comando assicurano che gli strumenti UNIX di base siano coperti (come GCC per esempio) per poter compilare e collegare il codice.

Xcode utilizza quindi quegli strumenti di base.


Dai documenti:

Che cos'è il pacchetto Strumenti da riga di comando?

Il pacchetto di strumenti da riga di comando è un piccolo pacchetto autonomo disponibile per il download separatamente da Xcode e che consente di eseguire lo sviluppo della riga di comando in OS X. È costituito da due componenti: OS X SDK e strumenti da riga di comando come Clang, che sono installati in / usr / bin.


8
Ma a quanto pare Xcode.app viene fornito con i propri strumenti da riga di comando, come clang, git, makepure. Perché è necessaria l'installazione di un'altra copia di questi strumenti per compilare un software?
Siyuan Ren,

Perché apparentemente? Git e make sono strumenti aggiuntivi che non sono inclusi negli strumenti "di base" della riga di comando.
Bastian Gruber,

3
git, makesono tutti nella directory, /Library/Developer/CommandLineTools/usr/binquindi sono effettivamente inclusi negli strumenti "di base" della riga di comando.
Siyuan Ren,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.