He escuchado a más de una persona decir que si su proceso de compilación está haciendo clic en el botón de compilación, entonces su proceso de compilación está roto. Con frecuencia esto va acompañado de consejos para usar cosas como make
, cmake
, nmake
, MSBuild
, etc. ¿Qué ofrecen exactamente estas herramientas que justifiquen el mantenimiento manual de un archivo de configuración separado?¿Por qué debería uno usar un sistema de compilación sobre el que se incluye como parte de un IDE?
EDIT: Me interesan más las respuestas que se aplicarían a un único desarrollador que trabaja en un proyecto de línea ~ 20k C++, pero también me interesa el caso general.
EDIT2: Parece que no hay una buena respuesta a esta pregunta, por lo que he seguido adelante y la convertí en CW. En respuesta a aquellos que hablan de Integración Continua, sí, entiendo completamente cuando tienes muchos desarrolladores en un proyecto que tiene CI es bueno. Sin embargo, esa es una ventaja de CI, no de mantener scripts de compilación separados. Son ortogonales: por ejemplo, Team Foundation Build es una solución de CI que utiliza los archivos de proyecto de Visual Studio como su configuración.
MSBuild es en gran parte lo que Visual Studio usa cuando haces clic en el botón de compilación. –
@John: no para proyectos C/C++, y no para todo. –
Eso suena como el estándar del programador "Si no puedo abrir el capó, no puede hacer lo que quiero" comenta. Puede construir en integración continua usando la línea de comandos devenv con solo su archivo .sln. –