首先先看一下什麼是makefile
makefile定義了一系列的規則來指定,哪些文件須要先編譯,哪些文件須要後編譯,哪些文件須要從新編譯,甚至於進行更復雜的功能操做,由於 makefile就像一個Shell腳本同樣,其中也能夠執行操做系統的命令。 makefile帶來的好處就是--「自動化編譯」,一旦寫好,只須要一個make命令,整個工程徹底自動編譯,極大的提升了軟件開發的效率。make是一個命令工具,是一個解釋makefile中指令的命令工具,通常來講,大多數的IDE都有這個命令,好比:Delphi的make,Visual C++的nmake,Linux下GNU的make.可見,makefile都成爲了一種在工程方面的編譯方法。 make 根據Makefile文件編譯源代碼、鏈接、生成目標文件、可執行文件。 make clean 清除上次的make命令所產生的object文件(後綴爲「.o」的文件)及可執行文件。 make install 將編譯成功的可執行文件安裝到系統目錄中,通常爲/usr/local/bin目錄。 make dist 產生髮布軟件包文件(即distribution package)。這個命令將會將可執行文件及相關文件打包成一個tar.gz壓縮的文件用來做爲發佈軟件的軟件包。 它會在當前目錄下生成一個名字相似「PACKAGE-VERSION.tar.gz」的文件。PACKAGE和VERSION,是咱們在configure.in中定義的AM_INIT_AUTOMAKE(PACKAGE, VERSION)。 make distcheck 生成發佈軟件包並對其進行測試檢查,以肯定發佈包的正確性。這個操做將自動把壓縮包文件解開,而後執行configure命令,而且執行make,來確認編譯不出現錯誤,最後提示你軟件包已經準備好,能夠發佈了。 make distclean 相似make clean,但同時也將configure生成的文件所有刪除掉,包括Makefile文件。工具