色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【Makefile】簡單實用的Makefile模板來了

嵌入式物聯網開發 ? 來源:嵌入式物聯網開發 ? 作者:嵌入式物聯網開發 ? 2022-08-31 12:46 ? 次閱讀

今天給大家介紹一個簡單實用的Makefile模板,也可以當做學習Makefile核心內容的范例,里面都有詳細的注釋,清晰明了。

這個Makefile主要解決以下需求:

###################################################################################### # 需求: #1.編譯輸出的所有文件均放在一個output目錄,.o文件的相對目錄應與源碼的位置保持一致; #2.需要生成每個.c文件的頭文件依賴,當.c文件為xxxx.c時,.o文件名為xxx.o,頭文件依賴文件名為.xxx.o.d ######################################################################################

廢話不多說,直接上內容:

#######################################################################################################
# 需求:
#1.編譯輸出的所有文件均放在一個output目錄,.o文件的相對目錄應與源碼的位置保持一致;
#2.需要生成每個.c文件的頭文件依賴,當.c文件未xxxx.c時,.o文件名為xxx.o,頭文件依賴文件名為.xxx.o.d 
#######################################################################################################

# 定義輸出目錄
OUTPUT		:= output
OUTPUT_BIN	:= $(OUTPUT)/test

# 定義.c文件列表
SRC-C		+= ./src/main.c 
SRC-C		+= ./src/test1/test1.c 
SRC-C		+= ./src/test2/test2.c 
SRC-C		+= ./src/test3/test3.c 

# 求出.o文件列表 
SRC-O		+= $(patsubst %.c, $(OUTPUT)/%.o, $(SRC-C))

# 求出.o文件的頭文件依賴列表  # output/./src/test1/test1.o ==> output/./src/test1/.test1.o.d
SRC-O-DEPS	+= $(foreach n, $(SRC-O), $(dir $(n)).$(notdir $(n).d))

# Entry for Makefile
all: info gen_output gen_bin 
	@echo 
	@echo Generate $(OUTPUT_BIN) done !
	@echo 

# Show some variables	
info:
	@echo 
	@echo SRC-C=$(SRC-C)
	@echo SRC-O=$(SRC-O)
	@echo SRC-O-DEPS=$(SRC-O-DEPS)
	@echo 

# Generate output bin
gen_bin: $(SRC-O) $(SRC-O-DEPS)
	touch $(OUTPUT_BIN)

# Create .o files	
$(OUTPUT)/%.o:
	test -d $(dir $@) || mkdir -p $(dir $@)
	touch $@
	
# Create .o dependent files
$(OUTPUT)/.%.o.d: 
	touch $@

# Create output path when it's not exist !	
gen_output:
	test -d $(OUTPUT) || mkdir -p $(OUTPUT)

# Clean builded output files	
clean:
	rm -rf $(OUTPUT)
	
.PHONY: info gen_output clean

工程的文件目錄結構如下圖:

img點擊并拖拽以移動

編輯

工程目錄執行make即可開始編譯,執行make clean即可清除編譯文件。

img點擊并拖拽以移動

編輯

值得注意的是,Makefile里面都是模擬生成.o .o.d .bin等文件,在實際工程運用中,需要根據自己的實際情況加以修改。

使用過程如有發現問題,可在評論席提出,期待您的寶貴建議,謝謝。


延伸閱讀:

1.【Linux + Makefile】十分鐘教你學會Makefile的FORCE

\2. 【Linux + Makefile】Makefile的高階用法:解決C文件包含的頭文件修改了,但C文件不重新編譯的問題

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 模板
    +關注

    關注

    0

    文章

    108

    瀏覽量

    20560
  • Makefile
    +關注

    關注

    1

    文章

    125

    瀏覽量

    19181
收藏 人收藏

    評論

    相關推薦

    linux系統中Makefile的使用方法

    的基礎用法講起,逐步深入到更高級的應用,為你呈現一個全面而詳細的Makefile使用手冊。 第一:Makefile的基本結構 一個最簡單Makefile包含規則,規則由目標(targ
    的頭像 發表于 05-11 08:49 ?650次閱讀

    Makefile中文教程 -下載

    Makefile中文教程,免費下載哦。
    發表于 03-25 08:57 ?67次下載

    駕馭Makefile

    駕馭Makefile在網上你能找到很多關于Makefile的學習資料,但絕大部分給你的只是一個知識點,與將Makefile運用到項目中(尤其是大型項目)的差距非常的大。因為,將Makefile
    發表于 01-05 17:05 ?9次下載

    跟我一起學makefile

    關于makefile學習,深入了解嵌入式下makefile的編寫
    發表于 05-23 18:21 ?0次下載

    linux makefile教程

     什么是makefile?或許很多Winodws的程序員都不知道這個東西,因為那些Windows的IDE都為你做了這個工作,但我覺得要作一個好的和professional的程序員,makefile
    發表于 11-12 09:11 ?5323次閱讀

    makefile的基本語法

     在Makefile中,最重要的三個概念是:目標(target)、依賴關系(dependency)和命令(command)。目標是指要干什么,即運行make后生成什么;依賴是指明目標所依賴的其他目標;命令則告訴make如何生成目標,這三個概念是通過Makefile中的規則
    發表于 11-12 10:15 ?1.1w次閱讀

    Makefile是什么?Makefile工作原理是怎樣的?Makefile經典教程免費下載

    Makefile的重要性 會不會寫makefile,從一個側面說明了一個人是否具備完成大型工程的能力 makefile帶來的好處就是——“自動化編譯”,一旦寫好,只需要一個make命令,整個工程完全自動編譯,極大的提高了軟件
    發表于 09-12 17:19 ?0次下載
    <b class='flag-5'>Makefile</b>是什么?<b class='flag-5'>Makefile</b>工作原理是怎樣的?<b class='flag-5'>Makefile</b>經典教程免費下載

    Makefile的項目模板免費下載

    本文檔的主要內容詳細介紹的是Makefile的項目模板免費下載 可根據項目名稱修改。
    發表于 06-12 08:00 ?11次下載
    <b class='flag-5'>Makefile</b>的項目<b class='flag-5'>模板</b>免費下載

    Linux內核的Makefile、Kconfig和.config文件

    問題都和Makefile、Kconfig、.config有關,下面簡單談談Makefile、Kconfig和.config。希望對你有啟發。 三者的作用: 簡單來說就是去飯店點菜:Kc
    的頭像 發表于 11-12 17:31 ?3044次閱讀

    芯片設計中的Makefile簡單教程

    Makefile可以根據指定的依賴規則和文件是否有修改來執行命令。常用來編譯軟件源代碼,只需要重新編譯修改過的文件,使得編譯速度大大加快。
    的頭像 發表于 12-24 17:41 ?942次閱讀

    嵌入式中的Makefile應用

    文章目錄一.Makefile 引入二. Makefile語法1.通配符2.假象目標3.變量三.Makefile函數四.實例本文主要總結一下嵌入式開發中的Makefile,一般項目中都需
    發表于 11-03 17:06 ?11次下載
    嵌入式中的<b class='flag-5'>Makefile</b>應用

    一個STM32編譯Makefile模板

    一個STM32編譯Makefile模板
    發表于 11-13 20:06 ?10次下載
    一個STM32編譯<b class='flag-5'>Makefile</b><b class='flag-5'>模板</b>

    MakefileMakefile與shell命令的聯系

    博主最近在項目實踐過程中,需要深度定制項目的Makefile,其中有些復雜的流程必須得借助shell腳本才能高效地完成,為此博主特意深入學習了在Makefile種調用shell命令的方法。
    的頭像 發表于 07-11 09:06 ?3456次閱讀
    【<b class='flag-5'>Makefile</b>】<b class='flag-5'>Makefile</b>與shell命令的聯系

    Makefile】通用模板

    對于上述這樣的多.c文件,又不在同一個目錄下的大型工程中,借助makefile可以來減輕工作任務
    的頭像 發表于 04-15 12:47 ?478次閱讀
    【<b class='flag-5'>Makefile</b>】通用<b class='flag-5'>模板</b>

    三個Makefile模板分享

    ????本文分享三個Makefile模板:編譯可執行程序、編譯靜態庫、編譯動態庫。 1 寫在前面 ????對于Windows下開發,很多IDE都集成了編譯器,如Visual Studio,提供了
    的頭像 發表于 07-10 09:07 ?1006次閱讀
    三個<b class='flag-5'>Makefile</b><b class='flag-5'>模板</b>分享
    主站蜘蛛池模板: 亚洲免费中文| 毛片大全网站| 丰满少妇发泄14p| AV福利无码亚洲网站麻豆| 中文在线观看免费网站| 亚洲欧美综合在线中文| 性感尼姑风流寺| 性xxx欧美| 性白俄罗斯高清xxxxx| 亚洲AV无码国产精品色在线看| 熟妇少妇任你躁在线无码| 色欲久久综合亚洲精品蜜桃| 骚妇BB双飞插| 色噜噜狠狠色综合中文字幕| 日韩黄色软件| 视频一区二区三区蜜桃麻豆| 思思久久99热只有频精品66| 色狐直播免费观看| 挺进绝色老师的紧窄小肉六| 无码中文字幕热热久久| 午夜十八岁禁| 亚洲精品一线二线三线无人区 | 国产午夜免费视频片夜色 | 搡女人免费免费视频观看| 桃花在线视频观看免费| 学生无码AV一区二区三区| 亚洲精品国产精麻豆久久99| 亚洲三级视频在线观看| 一本道mw高清码二区三区| 2022一本久道久久综合狂躁| a在线观看视频| 丰满的女朋友韩国版在线观看| 国产精品国产三级国产专区53| 国产三级在线观看视频| 极品内射少妇精品无码视频| 老熟女毛茸茸浓毛| 亲伦在线观看| 亚洲成A人片在线观看中文L| 一二三四高清中文版视频 | 午夜精品久久久久久久99蜜桃| 亚洲乱码日产精品BD在线下载|