Esecuzione di NMAKE

Sintassi

NMAKE [opzione ...] [macro ...] [destinazioni ...] [@command-file ...]

Osservazioni:

NMAKE compila solo destinazioni specificate o, quando non è specificato alcuno, la prima destinazione nel makefile. La prima destinazione makefile può essere uno pseudotarget che compila altre destinazioni. NMAKE usa makefile specificati con /Fo, se /F non è specificato, il file Makefile nella directory corrente. Se non viene specificato alcun makefile, usa regole di inferenza per compilare destinazioni della riga di comando.

Il file di testo del file di comando (o file di risposta) contiene l'input della riga di comando. Altri input possono precedere o seguire @command-file. È consentito un percorso. Nel file di comando le interruzioni di riga vengono considerate come spazi. Racchiudere le definizioni di macro tra virgolette se contengono spazi.

Opzioni di NMAKE

Le opzioni NMAKE sono descritte nella tabella seguente. Le opzioni sono precedute da una barra () o da un trattino (/-) e non fanno distinzione tra maiuscole e minuscole. Usare !CMDSWITCHES per modificare le impostazioni delle opzioni in un makefile o in Tools.ini.

Opzione Scopo
/A Forza la compilazione di tutte le destinazioni valutate, anche se non aggiornate rispetto ai dipendenti. Non forza le compilazioni di destinazioni non correlate.
/B Forza la compilazione anche se i timestamp sono uguali. Consigliato solo per i sistemi veloci (risoluzione di due secondi o meno).
/C Elimina l'output predefinito, inclusi errori o avvisi di NMAKE non irreversibili, timestamp e messaggio di copyright NMAKE. Elimina gli avvisi generati da /K.
/D Visualizza i timestamp di ogni destinazione valutata e dipendente e un messaggio quando una destinazione non esiste. Utile con /P per il debug di un makefile. Utilizzare !CMDSWITCHES per impostare o cancellare /D per parte di un makefile.
/E Fa sì che le variabili di ambiente eseseguono l'override delle definizioni di macro makefile.
/ERRORREPORT[ NONESEND | | PROMPT | QUEUE] Deprecato. controllo delle impostazioni di Segnalazione errori Windows (WER).
/FFilename Specifica il nome file come makefile. Gli spazi o le schede possono precedere il nome del file. Specificare /F una volta per ogni makefile. Per fornire un makefile dall'input standard, specificare un trattino (-) per il nome file e terminare l'input della tastiera con F6 o CTRL+Z.
/G Visualizza i makefile inclusi nella !INCLUDE direttiva . Per altre informazioni, vedere Direttive di pre-elaborazione makefile.
/HELP, /? Visualizza un breve riepilogo della sintassi della riga di comando di NMAKE.
/I Ignora i codici di uscita da tutti i comandi. Per impostare o cancellare /I per parte di un makefile, usare !CMDSWITCHES. Per ignorare i codici di uscita per parte di un makefile, usare un modificatore di comando trattino (-) o .IGNORE. Esegue l'override /K se vengono specificati entrambi.
/K Continua a creare dipendenze non correlate, se un comando restituisce un errore. Genera inoltre un avviso e restituisce un codice di uscita pari a 1. Per impostazione predefinita, NMAKE si interrompe se un comando restituisce un codice di uscita diverso da zero. Gli avvisi da /K vengono eliminati da /C. /I Esegue l'override /K se vengono specificati entrambi.
/N Visualizza ma non esegue comandi; vengono eseguiti i comandi di pre-elaborazione. Non visualizza i comandi nelle chiamate NMAKE ricorsive. Utile per il debug di makefile e il controllo dei timestamp. Per impostare o cancellare /N per parte di un makefile, usare !CMDSWITCHES.
/NOLOGO Elimina il messaggio di copyright NMAKE.
/P Visualizza informazioni (definizioni di macro, regole di inferenza, destinazioni, .SUFFIXES elenco) nell'output standard e quindi esegue la compilazione. Se non esiste alcuna destinazione makefile o della riga di comando, vengono visualizzate solo le informazioni. Usare con /D per eseguire il debug di un makefile.
/Q Controlla i timestamp delle destinazioni; non esegue la compilazione. Restituisce un codice di uscita zero se tutte le destinazioni sono aggiornate e un codice di uscita diverso da zero se una destinazione non è aggiornata. Vengono eseguiti i comandi di pre-elaborazione. Utile quando si esegue NMAKE da un file batch.
/R Cancella l'elenco .SUFFIXES e ignora le regole di inferenza e le macro definite nel Tools.ini file o predefinite.
/S Elimina la visualizzazione dei comandi eseguiti. Per eliminare la visualizzazione in parte di un makefile, usare il @ modificatore di comando o .SILENT. Per impostare o cancellare /S per parte di un makefile, usare !CMDSWITCHES.
/T Aggiorna i timestamp delle destinazioni della riga di comando (o la prima destinazione makefile) ed esegue i comandi di pre-elaborazione, ma non esegue la compilazione.
/U Deve essere usato insieme a /N. Esegue il dump dei file NMAKE inline in modo che l'output /N possa essere usato come file batch.
/XFilename Invia l'output degli errori di NMAKE al nome del file anziché all'errore standard. Gli spazi o le schede possono precedere il nome del file. Per inviare l'output degli errori all'output standard, specificare un trattino (-) per filename. Non influisce sull'output dai comandi all'errore standard.
/Y Disabilita le regole di inferenza in modalità batch. Quando questa opzione è selezionata, tutte le regole di inferenza in modalità batch vengono considerate come regole di inferenza regolari.

Tools.ini e NMAKE

NMAKE legge Tools.ini prima di leggere makefile, a meno che non /R venga usato. Cerca Tools.ini prima nella directory corrente e quindi nella directory specificata dalla variabile di ambiente INIT. La sezione relativa alle impostazioni di NMAKE nel file di inizializzazione inizia con [NMAKE] e può contenere qualsiasi informazione sul makefile. Specificare un commento su una riga separata che inizia con un segno di numero (#).

Codici di uscita di NMAKE

NMAKE restituisce i codici di uscita seguenti:

Codice Significato
0 Nessun errore (possibilmente un avviso)
1 Compilazione incompleta (rilasciata solo quando /K viene usato)
2 Errore del programma, probabilmente causato da uno di questi problemi:
- Errore di sintassi nel makefile
- Un errore o un codice di uscita da un comando
- Interruzione da parte dell'utente
4 Errore di sistema - memoria insufficiente
255 La destinazione non è aggiornata (rilasciata solo quando /Q viene usata)

Vedi anche

Riferimenti a NMAKE