問題

我在linux中學習c程式設計,當我遇到這行程式碼時

 $ make ex1

cc ex1.c -o ex1
 

我的問題是為什麼我們必須使用make exe1,不是cc命令構建庫和其他必要檔案.

  最佳答案

對於一個單檔案專案,它們大致相同.但是,實際世界專案往往有數十個,數百個或數千個檔案,並構建數十個或數百個庫和可執行檔案,可能有不同的設定等.在不儲存編譯命令的情況下管理所有這些都是不可能的,Makefile是一個非常有用的“某個地方”.

make的另一個重要屬性是它對檔案進行時間戳檢查,並且只重新執行輸出已過時的編譯/連結命令,即至少其中一個輸入比輸出更新.沒有這種檢查,您必須手動記住當您更改某些東西時需要重新編譯的檔案(當更改的檔案是標題時尤其困難),或者總是重新編譯所有東西,按大小順序增加構建時間.

  相同標籤的其他問題

clinuxubuntumakefilecompilation