linux 下makefile的使用舉例

2021-06-11 15:27:59 字數 1155 閱讀 8518

該程式在linux平台下用c語言實現

有兩個標頭檔案m1.h m2.h 對應的實現檔案m1.c m2.c  除錯檔案test.c

案例**如下:

m1.h

#includevoid m1_print(char *str);

m2.h

#includevoid m2_print(char *str);

m1.c

#include#include"m1.h"

void m1_print(char *str)

m2.c

#include#include"m2.h"

void m2_print(char *str)

test.c

#include#include"m1.h"

#include"m2.h"

void main()

makefile檔案兩種寫法:

1.

main:test.o m1.o m2.o

gcc -o testt test.o m1.o m2.o

test.o:test.c m1.h m2.h

gcc -c test.c

m1.o:m1.c m1.h

gcc -c m1.c

m2.o:m2.c m2.h

gcc -c m2.c

2.

ma:test.o m1.o m2.o

gcc -o $@ $^

test.o:test.c m1.h m2.h

gcc -c $<

m1.o:m1.c m1.h

gcc -c $<

m2.o:m2.c m2.h

gcc -c $<

注意:    1. 三個常用變數:$@(目標檔案),$^(所有依賴檔案),$<(第乙個依賴檔案)

2.命令列處需要tab鍵空行

3.makefile檔案中編譯命令其實就是乙個遞迴過程

4. 編譯指令make 或 make -f  makefile

linux下的makefile程式設計

程式1 mytool1.c include mytool1.h include stdio.h void mytool1 print char print str 程式2 mytool1.h ifndef mytool 1 h define mytool 1 h void mytool1 print...

Linux下的MakeFile檔案

makefile是linux下的檔案管理工具,本質是檔案,載入執行需要make命令,make命令可以認為是執行shell指令碼檔案 我們建立乙個makefile檔案,注意,在linux中,m首字母大小寫不區分 呼叫vim makefile makefile內容是main的gcc的過程,要分步驟寫,和...

linux下的Makefile詳解(5)

使用條件判斷 使用條件判斷,可以讓make根據執行時的不同情況選擇不同的執行分支。條件表示式可以是比較變數的值,或是比較變數和常量的值。一 示例 下面的例子,判斷 cc 變數是否 gcc 如果是的話,則使用gnu函式編譯目標。libs for gcc lgnu normal libs foo obj...