91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux系統中makefile的原理是什么

發布時間:2022-01-26 11:36:58 來源:億速云 閱讀:158 作者:柒染 欄目:開發技術

這篇文章主要為大家分析了Linux系統中makefile的原理是什么的相關知識點,內容詳細易懂,操作細節合理,具有一定參考價值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學習“Linux系統中makefile的原理是什么”的知識吧。

一個Linux系統程序員不會使用GNU make來構建和管理自己的工程可是說是一個不合格的程序員。那么Makefile應該怎樣去學習呢?

makefile簡介:

  • Makefile 可以簡單的認為是一個工程文件的編譯規則,描述了整個工程的編譯和鏈接等規則。

  • 其中包含了那些文件需要編譯,那些文件不需要編譯,那些文件需要先編譯,那些文件需要后編譯,那些文件需要重建等等。

  • 編譯整個工程需要涉及到的,在 Makefile 中都可以進行描述。換句話說,Makefile 可以使得我們的項目工程的編譯變得自動化,不需要每次都手動輸入一堆源文件和參數。

1.makefile的命名(兩種)

  1. makefile

  2. Makefile

2. makefile的規則

規則的三個要素:目標、依賴、命令

Linux系統中makefile的原理是什么

3. 多文件的makefile的編寫(一個源文件只重新編譯改變的文件)

  1. makefile可以有多個規則,當第一個規則的的命令在執行的時候發現沒有相應的依賴,就在下面的規則中找。最上面的規則的目標是終極目標一定寫在最上面,也就是最后要生成的文件。Linux系統中makefile的原理是什么

  2. 多文件Makefile的更新原理(基于時間)Linux系統中makefile的原理是什么

4. makefile中的變量

  1. 自定義變量obj=main.o add.o sub.o引用的時候直接使用 $(obj)Linux系統中makefile的原理是什么

  2. 自動變量()規則中的第一個依賴@:規則中的目標$^: 規則中所有的依賴

  3. 模式自動匹配 %子規則中:

  4. makefile維護的變量(通常大寫,自己可以修改)CC:cc(即gcc)APPFLAGS:預處理使用的選項CFLAGS:編譯的時候使用的選項LDFLAGS:鏈接庫使用的選項

Linux系統中makefile的原理是什么

5. makefile中的函數(都是有返回值)

  1. wildcard 查找當前目錄下所有.c文件,返回值給srcsrc=$(wildcard ./*.c)

  2. patsubst 替換所有.c文件為.o文件obj=(src))Linux系統中makefile的原理是什么

6. make clean

在makefile最后加入clean的目標,為了重新編譯所有文件得刪除原來生成的文件Linux系統中makefile的原理是什么

7. 最終的簡單的makefile

Linux系統中makefile的原理是什么

關于“Linux系統中makefile的原理是什么”就介紹到這了,更多相關內容可以搜索億速云以前的文章,希望能夠幫助大家答疑解惑,請多多支持億速云網站!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

巴彦淖尔市| 中卫市| 呈贡县| 蕉岭县| 和田县| 华宁县| 弥渡县| 射洪县| 修水县| 西城区| 思茅市| 莲花县| 哈密市| 顺昌县| 金华市| 晋宁县| 锡林浩特市| 洛浦县| 桐乡市| 漳平市| 都江堰市| 喀喇| 阳新县| 年辖:市辖区| 诏安县| 浏阳市| 鄂托克前旗| 广灵县| 西城区| 斗六市| 三原县| 师宗县| 河南省| 阳高县| 青岛市| 巴中市| 彰化县| 泰顺县| 东光县| 温州市| 资兴市|