Scopo della creazione di un file utilizzando Make

4

Sto cercando di capire quale sia lo scopo di creare file usando comandi come cmake .. e make , ho provato a cercare online ma non ho trovato alcuna spiegazione concisa sul suo scopo che potrei trovare.

Inoltre, è necessario utilizzare make su una cartella di progetto che non è stata creata per utilizzare il sorgente (C ++) in altri progetti.

So che questa potrebbe essere una domanda semplicistica, ma dato che sono abbastanza nuovo nella creazione di file, qualsiasi informazione o riferimento sarebbe molto apprezzata.

    
posta foo 10.06.2014 - 22:15
fonte

3 risposte

13

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.

    
risposta data 10.06.2014 - 22:37
fonte
5

make è una sorta di processo batch per la compilazione / collegamento / creazione, ecc. Puoi eseguire tutti questi passaggi manualmente oppure puoi utilizzare make .

Maggiori informazioni qui: link e link

    
risposta data 10.06.2014 - 22:19
fonte
2

Fino a quando il tuo progetto è piccolo, è molto facile crearlo senza alcun makefile. Ma immagina che i tuoi progetti abbiano 200 file sorgente che hai diviso in un certo numero di librerie statiche e dinamiche, quindi passare i nomi di 200 file al compilatore in un prompt dei comandi sarebbe impossibile. Inoltre puoi creare un file batch che costruisce i tuoi progetti. Ma i file sono superiori ai file batch. In particolare, quando usi cmake il tuo codice sorgente può essere facilmente compilato con qualsiasi compilatore. Questo è il motivo per cui i progetti di grandi dimensioni utilizzano i makefile.

Nota: se utilizzi IDE convinient come Visual Studio, non sentirai spesso la necessità di scrivere makefile, poiché l'IDE ti rende più facile.

    
risposta data 11.06.2014 - 07:49
fonte

Leggi altre domande sui tag