亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

Makefile管理

2024-06-28 14:32:00
字體:
來源:轉載
供稿:網友

      Makefile百科簡介:一個工程中的源文件不計其數,其按類型、功能、模塊分別放在若干個目錄中,makefile定義了一系列的規則來指定,哪些文件需要先編譯,哪些文件需要后編譯,哪些文件需要重新編譯,甚至于進行更復雜的功能操作,因為 makefile就像一個Shell腳本一樣,其中也可以執行操作系統的命令。

     在進行工程管理時往因為編譯工具或源文件類型,數目多少等等的原因,需得重復編寫代碼

那如何生成一個通用的Makefile呢? 如下例:

 

# CORTEX-A9 PERI DRIVER CODE
# VERSION 2.0
# ATHUOR Je_Cortex
# MODIFY DATE
# 2014.05.28  Makefile

CROSS_COMPILE = arm-none-eabi-
#定義一個變量,CROSS_COMPILE ,變量值arm-none-eabi-
#交叉編譯工具的前綴

NAME =led
#定義一個變量NAME,變量值 led
#生成的文件名稱

#================================================================#
CFLAGS += -g   -O0  -mabi=apcs-gnu -mfpu=neon -mfloat-abi=softfp  -fno-builtin /
    -nostdinc  -I ./common/include      #告訴編譯器不鏈接gnu 內建庫,鏈接當前路徑下的./common/include
# += 變量的原值后面追加
# CFLAGS 是makefile的默認變量,作為gcc的選項
# 對變量CFLAGS,追加值
#  -E  -S  -c  -o  -g   -D  -i   -I  -l  -L
                                         
LD = $(CROSS_COMPILE)ld
#定義一個變量 LD =arm-none-eabi-ld
 
CC = $(CROSS_COMPILE)gcc
#定義一個變量 CC =arm-none-eabi-gcc

OBJCOPY = $(CROSS_COMPILE)objcopy
#定義一個變量 OBJCOPY =arm-none-eabi-objcopy

OBJDUMP = $(CROSS_COMPILE)objdump
##定義一個變量 OBJDUMP =arm-none-eabi-objdump


#================================================================#
OBJSss  := $(wildcard start/*.S) $(wildcard common/src/*.S) $(wildcard *.S)/
     $(wildcard start/*.c) $(wildcard common/src/*.c)       /
     $(wildcard usr/*.c) $(wildcard *.c) 

#$(wildcard start/*.S) : 按指定內容(start目錄下,所有以.S結尾的指令)進行文件搜索,返回搜到的文件名


OBJSs   := $(patsubst %.S,%.o,$(OBJSss))
#定義變量OBJSs,變量的值為:start.o   _udivsi3.o   _umodsi3.o   uart.c  PRintf.c  led.c
#$(patsubst %.S,%.o,$(OBJSss))  按照指定的規則(對變量OBJSss的值.S 替換成.o)對字符內容進行替換

OBJS  := $(patsubst %.c,%.o,$(OBJSs))
#定義變量OBJS,變量的值為:start.o   _udivsi3.o   _umodsi3.o   uart.o  printf.o  led.o
#================================================================#
%.o: %.S
 $(CC) $(CFLAGS) -c -o  $@ $<
%.o: %.c
 $(CC) $(CFLAGS) -c -o  $@ $<


all:clean  $(OBJS)
 $(LD)  $(OBJS) -T map.lds -o $(NAME).elf
 $(OBJCOPY)  -O binary  $(NAME).elf $(NAME).bin
 $(OBJDUMP) -D $(NAME).elf > $(NAME).dis

#all:clean $(OBJS) 清除所有.o文件,防止修改.h后不編譯
#$(LD)  $(OBJS) -T map.lds -o $(NAME).elf
# arm-none-eabi-ld  start.o  _udivsi3.o   _umodsi3.o   uart.o  printf.o  led.o  -T map.lds -o led.elf
#根據鏈接腳本,鏈接生成elf

#$(OBJCOPY)  -O binary  $(NAME).elf $(NAME).bin
# arm-none-eabi-objcopy -O binary  led.elf  led.bin  二進制格式轉換

#$(OBJDUMP) -D $(NAME).elf > $(NAME).dis
# arm-none-eabi-objdump -D led.elf >  led.dis
#=================================================================#
clean:
 rm -rf $(OBJS) *.elf *.bin *.dis *.o
#=====================================


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
在线看国产精品| 精品亚洲一区二区三区在线观看| 欧美猛男性生活免费| 久久色在线播放| 日韩暖暖在线视频| 国产精品视频久久久| 国产成人啪精品视频免费网| 久久成人精品电影| 色综合导航网站| 久久久久久久久久久久久久久久久久av| 国产91精品久久久久| 欧美天天综合色影久久精品| 亚洲视屏在线播放| 91午夜在线播放| 国产精品久久久久久久久久99| 日韩成人av网址| 欧美日韩国产第一页| 亚洲va久久久噜噜噜久久天堂| 亚洲天堂成人在线视频| 久久国产色av| 亚洲欧美在线一区| 色偷偷偷亚洲综合网另类| 亚洲福利视频免费观看| 中文字幕国内精品| 成年人精品视频| 国内成人精品视频| 日韩欧美在线第一页| 精品国产鲁一鲁一区二区张丽| 国产精品777| 久久久免费高清电视剧观看| 国产精品高清网站| 一个色综合导航| 国产成人精品久久二区二区91| www日韩中文字幕在线看| 国内偷自视频区视频综合| 91国自产精品中文字幕亚洲| 日本亚洲精品在线观看| 国产日韩精品一区二区| 亚洲国产成人精品电影| 日本精品久久中文字幕佐佐木| 欧美激情手机在线视频| 亚洲激情 国产| 亚洲免费av片| 日韩在线观看免费高清完整版| 在线观看日韩av| 在线观看国产精品淫| 国产精品视频免费在线观看| 在线亚洲国产精品网| 姬川优奈aav一区二区| 国产一区二区三区在线观看网站| 欧美日韩国产精品一区二区三区四区| 欧美精品免费在线| 欧美美女18p| 亚洲尤物视频网| 欧美成人黄色小视频| 亚洲一区二区中文字幕| 精品色蜜蜜精品视频在线观看| 91日韩在线播放| 日韩激情视频在线播放| 一本色道久久88精品综合| 国产欧美精品久久久| 欧美日韩激情美女| 久久成人一区二区| 欧美裸体视频网站| 欧美大尺度激情区在线播放| 韩剧1988在线观看免费完整版| 日韩成人性视频| 亚洲自拍另类欧美丝袜| 欧美福利视频网站| 久久久国产精彩视频美女艺术照福利| 国产精品视频在线播放| 中文字幕在线看视频国产欧美在线看完整| 日本91av在线播放| 亚洲免费电影在线观看| 九九热在线精品视频| 91精品国产精品| 国产精品视频午夜| 69久久夜色精品国产69| 欧美在线视频网站| 精品国产自在精品国产浪潮| 成人h视频在线| 中文字幕国内精品| 国产在线不卡精品| 91精品国产色综合久久不卡98口| 国产精品jizz在线观看麻豆| 中文亚洲视频在线| 日韩小视频在线| 日日摸夜夜添一区| 久久久久久久久久久国产| 国产精品一区专区欧美日韩| 国产精品久久久久久久久久久新郎| 国产69精品久久久| 欧美夫妻性生活视频| 亚洲美女性视频| 日韩精品久久久久久福利| 亚洲美女视频网| 日韩欧美在线观看| 自拍偷拍免费精品| 国产成人aa精品一区在线播放| 欧美人在线观看| 国产丝袜一区二区| 欧美激情久久久久| 成人疯狂猛交xxx| 美女999久久久精品视频| 色综合视频一区中文字幕| 久久久在线免费观看| 精品欧美国产一区二区三区| 久久天天躁狠狠躁老女人| 日本久久久a级免费| 欧美日韩国产成人在线| 性欧美长视频免费观看不卡| 欧美影院成年免费版| 91在线色戒在线| 欧美天天综合色影久久精品| 亚洲精品久久久久久久久久久| 激情亚洲一区二区三区四区| 亚洲欧美国产一本综合首页| 日韩精品一区二区三区第95| 九九热r在线视频精品| 久久久久久久久久久久久久久久久久av| 9.1国产丝袜在线观看| 亚洲第一区第二区| 亚洲精品wwwww| 久久艳片www.17c.com| 亚洲国产精品va在看黑人| 最近2019中文免费高清视频观看www99| 欧美性感美女h网站在线观看免费| 久久久久久久久久国产| 怡红院精品视频| 精品自拍视频在线观看| 欧美精品www| 琪琪第一精品导航| 国产亚洲一区二区精品| 亚洲男人天天操| 久久久精品国产亚洲| 亚洲第一精品夜夜躁人人爽| 亚洲一区二区三区视频播放| 亚洲欧美精品一区| 法国裸体一区二区| 成人免费视频a| 国产精品极品尤物在线观看| 97色伦亚洲国产| 国产成人在线播放| 中文字幕成人在线| 一本一本久久a久久精品综合小说| 91美女片黄在线观看游戏| 日韩美女视频中文字幕| 久久久精品视频在线观看| 亚洲一区二区久久| 亚洲精品国精品久久99热| 欧美成人一二三| 国产精品久久久久aaaa九色| 成人激情在线观看| 日韩大片免费观看视频播放| 视频直播国产精品| 色综合91久久精品中文字幕| 亚洲在线www| 亚洲精品不卡在线| 91福利视频在线观看| 久久精品一本久久99精品| 日本久久久久亚洲中字幕| 97香蕉超级碰碰久久免费软件| 亚洲午夜激情免费视频| 黑人精品xxx一区一二区|