中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

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

南皮县| 盖州市| 汨罗市| 堆龙德庆县| 青冈县| 安庆市| 天峻县| 德钦县| 高安市| 皋兰县| 思茅市| 公主岭市| 尼木县| 南和县| 康保县| 富民县| 乌拉特后旗| 泸西县| 台安县| 枣庄市| 常德市| 邻水| 灵台县| 巩留县| 莎车县| 佛学| 昌平区| 庄浪县| 广元市| 商河县| 余姚市| 玉龙| 蓬溪县| 建湖县| 辽源市| 河西区| 绵阳市| 峨山| 嘉荫县| 全州县| 印江|