Se il tuo programma consiste in pochi file che possono essere compilati con una semplice riga di comando che richiama il compilatore, allora make
potrebbe essere superfluo. Tuttavia, in progetti di grandi dimensioni potresti avere dozzine di file che richiedono opzioni di compilatore e linker complesse, quindi make
o uno strumento simile diventa una necessità. Considerare, se si dispone di un progetto con 50 file di origine C ++ e si modifica solo uno di essi, non si desidera che vengano ricompilati tutti. Preferiresti semplicemente ricompilare l'unico file che è cambiato e ricollegarti ai file oggetto esistenti per il resto. Strumenti come make
si occupano automaticamente di faccende del genere.
Il linguaggio make
ha un numero di verruche e non penso che sia il linguaggio di programmazione preferito da nessuno. È anche molto complicato scrivere un makefile
che funzioni su più piattaforme, ad esempio Linux, OS X e Windows. Strumenti come cmake
possono essere utilizzati per generare makefiles
che funzionerà su più piattaforme e ti consente di descrivere il processo di creazione del tuo software in una lingua che è discutibilmente meno brutta di make
corretta.