<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Makefile 學習與使用

      Makefile 學習與使用

      • $@ 目標文件
      • $^ 所有依賴文件
      • $< 第一個依賴文件
      • $? 修改后的依賴文件

      VPATH和vpath

      • VPATH = dir1 dir2...
        在當前目錄下找不到文件時會到VPATH下逐個尋找
      • vpath [file] [dir1 dir2...]
        1. 依次在dir下尋找file
        2. 將含有file的文件夾置空
        3. 清楚所有已設置的vpath

      example

      .c file in src,

      .h file in include

      nothing in current directory

      vpath %.c src
      vpath %.h include
      main:main.o list1.o list2.o
          gcc -o $@ $<
      main.o:main.c
          gcc -o $@ $^
      list1.o:list1.c list1.h
          gcc -o $@ $<
      list2.o:list2.c list2.h
          gcc -o $@ $<
      

      等同于:

      VPATH=src include
      main:main.o list1.o list2.o
          gcc -o $@ $<
      main.o:main.c
          gcc -o $@ $^
      list1.o:list1.c list1.h
          gcc -o $@ $<
      list2.o:list2.c list2.h
          gcc -o $@ $<
      

      Makefile 隱含規則

      Makefile 條件判斷

      • ifeq (a,b)
      • ifneq 'a' 'b'
      • ifdef a
      • ifndef a
      • else endif

      Makefile 偽目標

      .PHONY:clean
      clean:
        rm -rf *.o test
      

      Makefile 函數

      • 字符串處理函數
        $(patsubst %.c,%.o,1.c 2.c 3.c).c file 替換成.o file

      $(subst fuck,like,fuck you)輸出like you

      $(strip a b c)輸出abc

      $(filter %.c %.o,1.c 2.o 3.s)過濾.c & .o file輸出1.c 2.o

      $(filter-out 1.c 2.o ,1.o 2.c 3.s)輸出3.s

      $(sort foo bar foo lost)輸出bar foo lost而且去重

      $(word num,text1 text2 text3)輸出the NO.num text

      • 文件名操作函數
        $(dir file/directory...)獲取目錄名

      $(notdir file/directory...)獲取文件名

      $(suffix file/directory...)獲取文件后綴

      $(basename file/directory...)獲取文件前綴

      $(addsuffix suffix,file/directory...)給文件或目錄添加后綴

      $(addprefix prefix,file/directory...)給文件或目錄添加前綴

      $(join a b,1 2 3)連接函數,輸出a1 b2 3

      $(wildcard *.c *.h)通配符函數

      • 其他常用函數
        $(foreach var,list,text) 把參數list中的單詞逐一取出放到參數var所指定的變量中,然后再執行text所包含的表達式。

      $(if condition,then-part [,else-part])

      $(call expression,parm1,parm2,parm3,...)

      Makefile 命令回顯

      @cmd

      Makefile 文件包含

      include filenames出錯退出
      -include filenames出錯也不退出

      posted @ 2021-01-14 20:53  游客aka孟游的博客  閱讀(165)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 日本免费精品| 中文字幕国产精品一二区| 国产69精品久久久久99尤物| 日本丰满人妻xxxxxhd| 蜜芽久久人人超碰爱香蕉| 国产精品亚洲综合久久小说| 人人爽人人爽人人片a免费| 欧美人与动牲交a免费| 91毛片网| 国产一区二区日韩经典| 老色批国产在线观看精品 | 无码熟妇人妻av影音先锋| 国产一区二区三区色噜噜| 国产太嫩了在线观看| 色吊丝免费av一区二区| 日韩国产中文字幕精品| 久久精品国产亚洲av麻豆软件| 国产绿帽在线视频看| 国产免费踩踏调教视频| 广水市| 国产精品蜜臀av在线一区| 深夜精品免费在线观看| 波多野结衣av一区二区三区中文| 性男女做视频观看网站| 中文字幕亚洲男人的天堂| 丁香五月亚洲综合在线| 国产精品中文字幕第一区 | 97夜夜澡人人爽人人模人人喊| 成人欧美一区二区三区在线| 中文字幕乱码在线播放| 一区二区亚洲人妻精品| 国产精品人妻中文字幕| 2020国产欧洲精品网站| 无码国产精品一区二区免费3p| 国产精品中文字幕自拍| 亚洲一区二区三区在线播放无码| 国产清纯在线一区二区| 田林县| 四虎影视一区二区精品| 精品久久久久久无码免费| 亚洲国产欧美一区二区好看电影|