makefile


CC=g++


start:a.o main.o
        $(CC) -o myapp a.o main.o

.cpp.o:
        $(CC) -o $@ -c $<

clean:
        rm -rf main.o a.o
~                                                                               
~            

make
make clean

進(jìn)一步深化 main.cpp\ a.cpp == main.cpp a.cpp

CC=g++

SRCS=main.cpp\
        a.cpp

OBJS=main.o\
        a.o
EXEC=myapp
start:$(OBJS)
        $(CC) -o $(EXEC) $(OBJS)

.cpp.o:
        $(CC) -o $@ -c $<

clean:
        rm -rf $(OBJS)

繼續(xù)優(yōu)化
OBJS=main.o
\ a.o 可以替換成 OBJS=$(SRCS:.cpp=.o)
意思就是將SRCS中的.cpp替換成.o

make 文件的原理:.o .cpp時(shí)間判斷
make不關(guān)心.h的變化

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 來(lái)自陳浩的一片老文,但絕對(duì)營(yíng)養(yǎng)。 示例工程:3 個(gè)頭文件*.h,和 8 個(gè) C 文件*.c。 初 編譯過(guò)程,源文件...
    周筱魯閱讀 4,788評(píng)論 0 17
  • 最近在linux平臺(tái)開發(fā)程序,不可避免的要使用Makefile來(lái)編譯程序。以前雖然學(xué)過(guò)但好久沒用過(guò)了,很是生疏。從...
    kingkongzg閱讀 943評(píng)論 0 0
  • 編譯程序的命令g++ hello_world.cpp -o hello-o定義輸出文件額名字為hello,該輸出文...
    jianshuttl閱讀 8,389評(píng)論 0 0
  • 系統(tǒng)的Makefile文件 本文以某一類linux系統(tǒng)為例,分析該類linux系統(tǒng)中make的流程和原理。打開ma...
    zplodge閱讀 6,768評(píng)論 0 0
  • 分享一下陪孩子成長(zhǎng)的感悟 1、愛孩子是需要學(xué)習(xí)的,不是與生俱來(lái)就會(huì)的。 “愛孩子是老母雞都會(huì)做的事情,可是要善于教...
    yue銘閱讀 364評(píng)論 0 0

友情鏈接更多精彩內(nèi)容