Ho sentito più di una persona dire che se il processo di compilazione fa clic sul pulsante di costruzione, il processo di creazione non funziona. Spesso questo è accompagnato da consigli per utilizzare cose come make
, cmake
, nmake
, MSBuild
, ecc. Che cosa offrono esattamente questi strumenti che giustificano il mantenimento manuale di un file di configurazione separato?Perché si dovrebbe usare un sistema di compilazione su quello che è incluso come parte di un IDE?
EDIT: Sono più interessato alle risposte applicabili a un singolo sviluppatore che lavora su un progetto C++ a ~ 20k line, ma sono interessato anche al caso generale.
EDIT2: Non sembra che ci sia una buona risposta a questa domanda, quindi sono andato avanti e l'ho fatto in CW. In risposta a coloro che parlano dell'integrazione continua, sì, capisco completamente quando si hanno molti sviluppatori su un progetto con CI che è bello. Tuttavia, questo è un vantaggio dell'IC, non del mantenimento di script di compilazione separati. Sono ortogonali: ad esempio, Team Foundation Build è una soluzione CI che utilizza i file di progetto di Visual Studio durante la sua configurazione.
MSBuild è in gran parte ciò che Visual Studio utilizza quando si fa clic sul pulsante di generazione. –
@John: non per i progetti C/C++ e non per tutto. –
Sembra lo standard del programmatore "Se non riesco ad aprire il cofano, non può assolutamente fare quello che voglio". È possibile creare un'integrazione continua utilizzando la linea di comando devenv con il proprio file .sln. –