gnu 的 make 可以自動推導檔案以及檔案依賴關係後面的命令。因此,我們就沒必要在
每個 .o 檔案後都寫上類似的命令, make命令會自動識別,並進行推導命令。
當make命令看到乙個 .o 檔案,它就會自動把 .c 檔案加在依賴關係中,例如make找到main.o,就可以推導出main.c就是main.o的依賴檔案,並且推導出要執行的命令gcc -c main.c。所以,我們的makefile檔案可以表達得更簡單些。
舊的(不用推導):
objects = main.o hello.o
main.o:main.c hello.h
gcc -c\
main.c
hello.o:hello.c hello.h
gcc -c hello.c
clean:
新的(需要推導):
objects = main.o hello.o
main.o:hello.h
hello.o:hello.h
clean:
對新的makefile檔案執行一下make命令:
~/desktop/mydir$ make
cc -c -o main.o main.c
cc -c -o hello.o hello.c
~/desktop/mydir$ ls
~/desktop/mydir$ .
hello world88!
謝謝閱讀! IDEA Intellij開啟自動make
idea intellij開啟自動編譯 2015 05 19更新 個人感覺自動make並不好用,特別是程式有錯誤需要查資料的時候也會make,所以還是關閉了 從eclipse轉移到intellij,還處於體驗期,感覺eclipse跑程式會快,而intellij則慢很多。跑了同乙個程式測試了時間,發現...
make命令 clean命令
先先看一下什麼是makefile makefile定義了一系列的規則來指定,哪些檔案需要先編譯,哪些檔案需要後編譯,哪些檔案需要重新編譯,甚至於進行更複雜的功能操作,因為 makefile就像乙個shell指令碼一樣,其中也可以執行作業系統的命令。makefile帶來的好處就是 自動化編譯 一旦寫好...
make相關命令
make 根據makefile編譯源 連線,生成目標檔案,可執行檔案。make clean 清除make命令所產生的object檔案 字尾為 o 的檔案 及可執行檔案。make install 將編譯成功的可執行檔案安裝到系統目錄中,一般為 usr local bin目錄。make dist 產生發...