一 開發(fā)中遇到的問題
1 開發(fā)程序時署浩,會涉及眾多源文件揉燃,原則上修改一個源文件,就要重新編譯所有的源文件筋栋,很不爽
2 如果只重新編譯受影響的文件炊汤,可不可以?應(yīng)該怎么確定這些受影響的文件呢弊攘?
二 ?解決問題的方法
1?Make命令
Make?記錄上次更新的文件(通常是對象文件)抢腐,并只更新那些需要的文件(包含更改的文件)以使源文件保持最新。
2 Makefile的結(jié)構(gòu)
如果您有一個包含許多源文件和/或頭文件的大程序襟交,當(dāng)您更改其他人所依賴的文件時迈倍,您必須重新編譯所有相關(guān)文件
沒有makefile,這是一項非常耗時的任務(wù)捣域。
Make是設(shè)計用于開始執(zhí)行makefile的Unix實用程序啼染。makefile是一個特殊的文件,您可以創(chuàng)建并命名makefile(或Makefile竟宋,具體取決于系統(tǒng))提完。在包含此makefile的目錄中,您將鍵入make并執(zhí)行makefile中的命令丘侠。如果您創(chuàng)建了多個makefile徒欣,請確保在鍵入make之前您位于正確的目錄中。
makefile包含一系列規(guī)則蜗字。這些規(guī)則告訴系統(tǒng)你想要執(zhí)行的命令打肝。大多數(shù)情況下脂新,這些規(guī)則是編譯(或重新編譯)一系列文件的命令。必須從第1欄開始的規(guī)則分為兩部分粗梭。第一行稱為依賴行争便,后面的行稱為行為或命令。行為行必須用選項卡縮進(jìn)断医。
依賴線由兩部分組成滞乙。第一部分(冒號前)是目標(biāo)文件,第二部分(冒號后)稱為源文件鉴嗤。它被稱為依賴線斩启,因為第一部分取決于第二部分。多個目標(biāo)文件必須用空格分隔醉锅。多個源文件也必須用空格分隔兔簇。語法如下:
目標(biāo):依賴文件
【TAB】命令?
命令行一定要按一個tab鍵,不能按空格?
當(dāng)我們運行“make?目標(biāo)“時硬耍,先要檢查”依賴文件“是否滿足垄琐,如果不滿足,必須先”make?依賴文件“经柴,如果滿足?狸窘,運行”命令”即可生成目標(biāo)
三 編寫一個最簡單的Makefile,發(fā)布自己的項目
SHELL=/bin/bash
DOMAIN="ipfs.io"
IPFSLOCAL="http://localhost:8080/ipfs/"
IPFSGATEWAY="https://ipfs.io/ipfs/“
OUTPUTDIR=你的項目目錄
deploy:
? ? ? ? rm -rf 你的項目目錄/blog ; \
??????? ipfs add -r -q $(OUTPUTDIR) | tail -n1 >versions/current ; \
??????? cat versions/current >>versions/history ; \
??????? export hash=`cat versions/current`; \
??????????????? echo ""; \
??????????????? echo "published website:"; \
??????????????? echo "- $(IPFSLOCAL)$$hash"; \
??????????????? echo "- $(IPFSGATEWAY)$$hash"; \