工程管理器的存在意義?
1,我們有成千上萬的源程式檔案時,gcc就顯得效率低下。
2,此時就需要一款自動檢查檔案更新情況,自動進行編譯的軟體,gun make就是一款這樣的軟體
3,makefile 是 make 的配置檔案,比如指定編譯選項,指定編譯環境等等。
5,每個專案的源**子目錄都會有乙個makefile 來管理,然後有乙個頂層的makefile 來統一管理所有子目錄的makefile
示例一:手動實現:
檔案比較少,我們用肉眼就可以簡單地辨別,究竟哪些要編譯哪些不需要重新再搞一遍,甚至所有檔案重新編譯一次也不是什麼十惡不赦的事情
示例二:make實現:
乙個由成千上萬個原始檔組成的龐大工程,比如 linux 原始碼,一旦我們對若干個地方進行了修改,重新編譯的檔案則需要精心地挑選,否則如果整體編譯必將會浪費大量時間,這個「精心挑選」的任務,就留給 make 幫我們來實現
究竟哪些檔案需要重新編譯?
答:根據檔案的時間戳進行判斷,將原始檔(a.c)和目標檔案(a.o)做對比,使用時檢測到a.c檔案比a.o檔案新,自動重新編譯a.o,此時a.o檔案的時間戳又比image的要新,在要使用image的時候對image重新編譯。這種遞推關係會在每一層目標-依賴之間傳遞。
工程管理器make
工程管理器make 命令tree 樹狀顯示目錄下的檔案 make命令 通過批處理來實現自動編譯 要想使用make必須要有 makefile 檔案 makefile三元素 目標 依賴命令 執行此命令,依賴該檔案來實現該目標 僅編譯hello.c的 makefile 檔案示例 hello hello.o...
make工程管理器
今天首先編寫了一道程式,有n個人圍成一圈,順序排號,從第乙個人開始報數 從1報到 3 凡報到 3的人退出圈子,問最後留下的是原來第幾號的那位。通過這道程式設計,對 c語言有了更深刻的理解。隨後又學習了 make 工程管理器的一些知識。首先是建立功能目錄 mkdir p add src mv add....
make工程管理器
工程管理器 make可以管理較多的檔案,自動編譯管理器 當然這裡也可以gcc add.c sub.c mul.c div.c main.c o main實現多檔案編譯過程 這裡主要介紹工程管理器make及makefile的使用 makefile是make讀入的唯一配置檔案,如果沒有makefile,...