天天看點

NMAKE的指令行文法

文法:

NMAKE [options] [macros] [targets]

其中,options是NMAKE的選項,macros是在指令行中的宏定義,targets是NMAKE的目标檔案清單。

選項(忽略大小寫):

1)        /A    強制重新構件所有與NMAKE的target相關的dependents,即使這些dependents 并沒有過期;

2)        /B    即使dependent與target有相同的time stamp,也重建該target。大部分的OS中的time stamp是以2秒為機關的,如果

                   一個2秒之内被修改,那麼它的time stamp将不會有任何變化。在這種情況下,你就需要使用該選項讓NMAKE重建之。為了

                   預防萬一,總是應該使用該選項,盡管可能會導緻不必要的重建操作。

3)        /C    屏蔽掉大部分的NMAKE輸出資訊,包括:非緻命錯誤資訊,警告資訊,time stamp和版權資訊。如果/C和/K選項同時存

                   在,則/K發出的警告資訊也會被幹掉。

4)        /D    在NMAKE執行期間顯示相關的資訊。包括每個檔案的time stamp,依賴關系,以及類似于“檔案不存在”之類的提示資訊。

                  用于對makefile除錯;

5)        /E    使環境變量可以覆寫預定義宏;

6)        /F filename     指定makefile的名字。如果用“-”代替filename,則NMAKE從STDIN 擷取makefile的輸入(對于鍵盤終端,

                                 用F6或CTRL+Z來結束輸入)。可以指定多個makefile,每個makefile前都要有一個/F。

                                 如果沒有/F選項,則NMAKE會在目前目錄查找一個名為MAKEFILE(沒字尾)的檔案作為makefile,如果找不

                                到,則對指令行目标檔案使用推導規則。

7)        /HELP    顯示幫助;

8)        /I     忽略makefile中所有指令的傳回值;

9)        /K    當某條指令出現錯誤時并不退出而是繼續執行其他指令。在預設的情況下,如果任何一條指令傳回非0值,NMAEK就回終止執

                  行。當打開/K選項後,NMAKE會繼續執行其他指令,但不會建構與出錯指令相關的檔案,而是發出一條警告資訊。如果/K選

                  項打開,同時建構無法完成,則NMAKE傳回1;

10)     /M   在MS-DOS下,将NMAKE程式交換到磁盤中,以騰出更多的記憶體。

11)     /N    顯示但不執行makefile 中的指令(預處理指令除外),用于DEBUG;

12)     /NOLOGO     禁止NMAKE版權資訊;

13)     /P    在執行NMAKE之前,将所有NMAKE資訊輸出到STDOUT,包括所有的宏定義,IR,目标檔案描述和.SUFFIXES list。如果打

                 開/P選項,而且不指定任何目标檔案,則NMAKE僅顯示相關資訊。

14)     /Q   檢查target和dependent的time stamp,但不執行commands block。如果目标檔案為有效的,則傳回0,否則傳回

                 255。隻有makefile中的預處理指令會被執行。當在批處理檔案中調用NMAKE時,該選項會十分有用。

15)     /R    清除.SUFFIXES list,忽略所有的IR和TOOLS.INI中定義的或預定義的宏。

16)     /S    禁止makefile中所有的被執行指令的顯示資訊;

17)     /T    将指令行中輸入檔案的time stamp改為目前時間,隻執行預處理指令而不執行commands block,目标檔案的内容不會被改

                 變;

18)     /V    當NMAKE被遞歸調用時,所有定義的宏都會被繼承。在預設的情況下,隻有在指令行中定義的宏和環境變量(實際上也是一個

                 宏)是可以被繼承的。

19)     /X filename    将NMAKE的所有錯誤資訊輸出到filename指定的檔案或裝置中。如果用“-”代替filename,則錯誤資訊會被輸出

                               到STDOUT。在預設情況下,錯誤資訊輸出到STDERR。該選項不會影響由makefile中的指令産生的到STDERR的

                               輸出。

20)     /?  顯示NMAKE的文法和可用選項;

NMAKE的傳回值

       NMAKE的傳回值及其含義見下表:

       值                 含義

       0                   沒有錯誤

       1                   沒有完全執行commands block中的指令(隻在/K選項打開時有效)

       2                   程式錯誤,可能的原因包括:

                            l  makefile的文法錯誤

                            l  commands block中的某條指令出現錯誤

                            l  使用者中斷

       4                   系統錯誤,例如記憶體不足

       255                在/Q選項打開時,如果目标檔案已過期,則傳回該值

網絡上收集,放到這裡友善自己以後使用時查找.

繼續閱讀