Linux學習之路(8)

2021-09-02 16:24:40 字數 1114 閱讀 2238

makefile

makefile 檔案  ===>  檔名:makefile 或者 makefile

書寫規則:

目標檔案:依賴檔案

(乙個tab鍵) 命令

命令前面的tab鍵不能用空格代替

目標檔案

最終要生生成的檔案

依賴檔案

為了生成目標檔案需要的檔案

命令通過依賴檔案生成目標檔案的方法

執行:執行 make 命令,執行命令的時候可以加 「-n」,代表不真正執行命令,只是預覽要執行的命令

偽目標的寫法:

目標:(空的)

命令偽目標不會生成目標檔案,執行 :make 名字 執行相應命令

常用:clean

清除相關檔案

all/all

最終要生成的目標,不要寫命令

clean的命令前可以加『-』,目的:當刪除某些檔案失敗的時候,可以讓命令繼續執行下去

執行規則:

1、如果目標檔案的時間早於依賴檔案,則重新生成目標檔案

2、如果依賴檔案不存在,則會去找相應的規則生成依賴檔案

makefile中變數不需要型別,例如:src=abc

取變數的值用 $(變數)  ===>   $(src)    ===>   abc

wildcard

$(wildcard   *.c)

匹配當前目錄下所有.c 檔案

patsubst

$(patsubst %.c,  %.o , $(src))

src = $(wildcard   *.c)                        ==> src =  main.c  add.c  mul.c  sub.c

obj= $(patsubst %.c,  %.o , $(src))    ==> obj =  main.o  add.o  mul.o  sub.o

$(@)

代表規則中的目標檔案

$(^)

代表規則中的所有依賴檔案

$(<)

代表規則中的第乙個依賴檔案

模式匹配:

%.o:%.c

偽目標最好寫在.phony後面宣告一下,否則如果當前資料夾下存在和偽目標相同的檔案,則偽目標將失效

Linux學習之路

一直想學習linux,就其原因,一是懂這個的都被認為水平比較高,二是懂這個的工資也不低,這兩點我也是比較看重的。想學linux也不是一件簡單的事,因為用windows的東西太久了,從3.1到95 98 se nt 2000 me xp 2003,直至最新的windows 7 2008等,全算下來,有...

Linux學習之路

bios 開機主動執行的韌體,會識別第乙個可開機的裝置 mbr 第乙個可開機裝置的第乙個扇區內的主要啟動記錄區塊,內含開機管理程式 開機管理程式 boot loader 一支可讀取核心檔案來執行的軟體 核心檔案 開始作業系統的功能。下面是網上比較好的開機流程,僅供參考 將資料同步寫入磁碟的方法 sy...

Linux學習之路

本白菜又要開始學linux了哈哈 硬碟上的分割槽最多只有4個,即主分割槽的數目 擴充套件分割槽的數目 4 同時擴充套件分割槽的數目最多只能有1個,也可以沒有。當想要分割槽數目 4,就需要劃分擴充套件分割槽,然後在擴充套件分割槽的基礎上劃分邏輯分割槽。一般c盤就是主分割槽,然後d,e,f,g,就是擴充...