Creare un progetto makefile C++
Un makefile è un file di testo che contiene istruzioni per la compilazione e il collegamento (o la compilazione) di un set di file di codice sorgente. Un programma (spesso chiamato programma di creazione ) legge il makefile e richiama un compilatore, un linker e possibilmente altri programmi per creare un file eseguibile. Il programma Microsoft è denominato NMAKE.
Se si dispone di un progetto makefile esistente, se si desidera modificare, compilare ed eseguire il debug nell'IDE di Visual Studio:
- Creare un progetto makefile in Visual Studio che usa il makefile esistente per configurare un file con estensione vcxproj che verrà usato da Visual Studio per IntelliSense. Non si avranno tutte le funzionalità dell'IDE disponibili con un progetto MSBuild nativo. Vedere Per creare un progetto makefile di seguito.
- Usare la Creazione guidata nuovo progetto da file di codice esistenti per creare un progetto MSBuild nativo dal codice sorgente. Il makefile originale non verrà più usato. Per altre informazioni, vedere Procedura: Creare un progetto C++ da codice esistente.
- Visual Studio 2017 e versioni successive: usare la funzionalità Apri cartella per modificare e compilare un progetto makefile così come è senza alcun coinvolgimento del sistema MSBuild. Per altre informazioni, vedere Progetti Apri cartella per C++.
- Visual Studio 2019 e versioni successive: Creare un progetto makefile UNIX per Linux.
Per creare un progetto makefile con il modello di progetto makefile
In Visual Studio 2017 e versioni successive, il modello di progetto makefile è disponibile se è installato il carico di lavoro per lo sviluppo di applicazioni desktop con C++.
Seguire la procedura guidata per specificare i comandi e l'ambiente usati dal makefile. Questo progetto potrà quindi essere usato per compilare il codice in Visual Studio.
Per impostazione predefinita, il progetto makefile non visualizza file in Esplora soluzioni. Il progetto makefile specifica le impostazioni di compilazione, riportate nella pagina delle proprietà del progetto.
Il file di output specificato nel progetto non ha alcun effetto sul nome generato dallo script di compilazione. Dichiara solo un'intenzione. Il makefile controlla comunque il processo di compilazione e specifica le destinazioni di compilazione.
Per creare un progetto makefile in Visual Studio
Scegliere File>Nuovo>Progetto dal menu principale di Visual Studio, quindi digitare "makefile" nella casella di ricerca. Se vengono visualizzati più modelli di progetto, selezionare tra le opzioni a seconda della piattaforma di destinazione.
Solo Windows: nella pagina Impostazioni di configurazione debug del progetto Makefile specificare il comando, l'output, pulire e ricompilare le informazioni per le compilazioni di debug e di vendita al dettaglio. Scegliere Avanti se si desidera specificare impostazioni diverse per una configurazione di rilascio.
Scegliere Fine per chiudere la finestra di dialogo e aprire il progetto appena creato in Esplora soluzioni.
Per creare un progetto makefile in Visual Studio 2015 o Visual Studio 2017
Nella pagina iniziale di Visual Studio, digitare "makefile" nella casella di ricerca Nuovo progetto. In alternativa, nella finestra di dialogo Nuovo progetto espandere Visual C++>Generali (Visual Studio 2015) o Altro (Visual Studio 2017) e quindi selezionare Progetto makefile nel riquadro Modelli per aprire la procedura guidata di creazione del progetto.
Nella pagina Impostazioni applicazione specificare le informazioni relative a ricompilazione, comandi, output e pulitura per le build di debug e vendita.
Scegliere Fine per chiudere la procedura guidata e aprire il progetto appena creato in Esplora soluzioni.
È possibile visualizzare e modificare le proprietà del progetto nella relativa pagina delle proprietà. Per altre informazioni sulla visualizzazione della pagina delle proprietà, vedere Impostare le proprietà del compilatore e della compilazione C++ in Visual Studio.
Creazione guidata Progetto makefile
Dopo aver creato il progetto makefile, è possibile visualizzare e modificare ognuna delle opzioni seguenti nella pagina Nmake della pagina delle proprietà del progetto.
Riga di comando di compilazione: specifica la riga di comando da eseguire quando l'utente seleziona Compila dal menu Compila. Viene visualizzata nel campo Riga di comando di compilazione nella pagina Nmake della pagina delle proprietà del progetto.
Output: specifica il nome del file che conterrà l'output per la riga di comando. Per impostazione predefinita, questa opzione è basata sul nome del progetto. Viene visualizzata nel campo Output nella pagina Nmake della pagina delle proprietà del progetto.
Comandi puliti: specifica la riga di comando da eseguire quando l'utente seleziona Pulisci dal menu Compila. Vengono visualizzati nel campo Riga di comando per Pulisci nella pagina Nmake della pagina delle proprietà del progetto.
Ricompila riga di comando: specifica la riga di comando da eseguire quando l'utente seleziona Ricompila dal menu Compila. Viene visualizzata nel campo Riga di comando per Ricompila tutto nella pagina Nmake della pagina delle proprietà del progetto.
Procedura: abilitare IntelliSense per progetti makefile
IntelliSense non funziona nei progetti makefile quando determinate impostazioni di progetto o opzioni del compilatore sono configurate in modo non corretto. Per configurare i progetti makefile in modo che IntelliSense funzioni come previsto, seguire questa procedura:
Aprire la finestra di dialogo Pagine delle proprietà. Per altre informazioni, vedere Impostare il compilatore e le proprietà di compilazione.
Selezionare la pagina delle proprietà Proprietà>di configurazione NMake.
Modificare le proprietà in IntelliSense in base alle esigenze:
Impostare la proprietà Definizioni del preprocessore per definire i simboli del preprocessore nel progetto makefile. Per altre informazioni, vedere
/D
(Definizioni del preprocessore).Impostare la proprietà Percorso di ricerca di inclusione per specificare l'elenco delle directory in cui il compilatore esegue la ricerca per risolvere i riferimenti di file che vengono passati alle direttive del preprocessore nel progetto makefile. Per altre informazioni, vedere
/I
(Directory di inclusione aggiuntive).Per i progetti che vengono compilati con CL.EXE da una finestra di comando, impostare la variabile di ambiente INCLUDE per specificare le directory in cui il compilatore esegue la ricerca per risolvere i riferimenti di file che vengono passati alle direttive del preprocessore nel progetto makefile.
Impostare la proprietà Inclusioni imposte per specificare quali file di intestazione elaborare durante la compilazione del progetto makefile. Per altre informazioni, vedere
/FI
(Nome forzato file di inclusione).Impostare la proprietà Percorso di ricerca assembly per specificare l'elenco delle directory in cui il compilatore eseguirà la ricerca per risolvere i riferimenti agli assembly .NET nel progetto. Per altre informazioni, vedere
/AI
(Specificare le directory dei metadati).Impostare la proprietà Assembly a uso forzato per specificare quali assembly .NET elaborare durante la compilazione del progetto makefile. Per altre informazioni, vedere
/FU
(Nome forzato #using file).Impostare la proprietà Opzioni aggiuntive per specificare altre opzioni del compilatore da usare in IntelliSense durante l'analisi dei file C++.
Scegliere OK per chiudere le pagine delle proprietà.
Usare il comando Salva tutto per salvare le impostazioni del progetto modificate.
Alla successiva apertura del progetto makefile nell'ambiente di sviluppo di Visual Studio, eseguire il comando Pulisci soluzione e quindi il comando Compila soluzione nel progetto makefile. IntelliSense funzionerà correttamente nell'IDE.
Vedi anche
Utilizzo di IntelliSense
Riferimenti a NMAKE
Procedura: Creare un progetto C++ dal codice esistente
Caratteri speciali in un makefile
Contenuto e funzionalità del makefile