- 16
- 0
- 约 14页
- 2017-07-09 发布于河南
- 举报
makefile学习
makefile学习
营帐研发部:胡文送
2010-12-29
一些基本概念:
make是一个工具,输入make,其会在当前目录下找名字为”Makefile”或者”makefile”的文件,要制定使用某个makefile文件可以使用:make -f 文件名,如(make -f Makefile_r 编译实时模式)。
如果命令太长,你可以使用反斜框(‘\’)作为换行符。make对一行上有多少个字符没有限制
当我们用“@”字符在命令行前,那么,这个命令将不被make显示出来
CPPFLAGS C预处理器参数
LDFLAGS 链接器参数。(如:“ld”)
CXXFLAGS C++语言编译器参数
-Idir? 在你#includefile的时候,会先在当前目录查找你所的头文件,如果没有找到,他回到缺省的头文件目录找,如果使用-I了目录,他先在你所的目录查找,然后再按常规的顺序去找.?-Ldir? 指定编译的时候,搜索库的路径。比如你自己的库,可以用它目录,不然编译器将只在标准库的目录找。这个dir就是目录的名称。-L../../bizlib/lib -lxdbc在../../bizlib/lib路径下查找,所使用名为libxdbc.a的函数库。
对于“=“,右侧的变量不一定要是已定义的,也可以使用后面定义的变量,对于“=:”则右侧的变量必须是已经定义的。
makefile样例分析:
库函数makefile:
c++/bizlib_crm/AllBrandExchange/Makefile
F201:/yzyfb/hws/c++/bizlib_crm/AllBrandExchange#vi Makefile
Makefile 108 lines, 2827 characters
## -*- Makefile -*-
## by herry 2006-11-4
type ?= PROG
#如果type没有被定义过,则type的值为PROG,如果之前被定义(如编译CICS环境时,使用# make type=CICS)则该语句不做任何操作,后续可通过判断type的值,判断编译环境。
LIBFILENAME_PROG = $(call mklibfilename,brdchg,$(VERSION))
# mklibfilename、VERSION :config/Make.rules.AIX中定义,
#格式: mklibfilename = lib$(1).a^M
# VERSION = 1.0.0^M
#此处得到值为:brdchg.a
SONAME_PROG = $(call mksoname,brdchg,$(SOVERSION))
# SOVERSION在config/Make.rules中定义:值为10
# mksoname 格式:$(if $(2),lib$(1).so.$(2),lib$(1).so)
LIBNAME_PROG = $(call mklibname,brdchg)
#mklibname = lib$(1).a^M
TARGETS_PROG = $(call mklibtargets,$(libdir)/$(LIBFILENAME),$(libdir)/$(SONAME),$(libdir)/$(LIBNAME))
# mklibtargets = $(1)
# libdir = $(top_srcdir)/lib^M
LIBFILENAME_CICS = $(call mklibfilename,cicsbrdchg,$(VERSION))
SONAME_CICS = $(call mksoname,cicsbrdchg,$(SOVERSION))
LIBNAME_CICS = $(call mklibname,cicsbrdchg)
TARGETS_CICS = $(call mklibtargets,$(libdir)/$(LIBFILENAME),$(libdir)/$(SONAME),$(libdir)/$(LIBNAME))
#上面四个变量只是针对CICS编译环境定义,具体涵义与上面的相同。
LIBFILENAME = $(LIBFILENAME_$(type))
SONAME = $(SONAME_$(type))
LIBNAME = $(LIBNAME_$(type))
TARGETS = $(TARGETS_$(type))
#上面四个变量的值都是根据t
您可能关注的文档
最近下载
- 2024年潍坊护理职业学院高职单招(英语/数学/语文)笔试2018-2023历年真题摘选带答案解析.docx VIP
- 《智能管理系统创新与发展》课件.ppt VIP
- 仁爱版七年级下册英语单词默写表(中文版).pdf VIP
- 2025年潍坊护理职业学院单招笔试数学试题库含答案解析.docx VIP
- 2025郑州中考一模化学试卷.docx VIP
- 2025河北单招第七类综合素质真题 .pdf VIP
- 2025黑龙江林业职业技术学院单招《数学》经典例题含答案详解(能力提升).docx VIP
- 大病低保申请书.docx VIP
- 发热伴血小板减少综合征药物治疗指南(2025年版)解读PPT课件.pptx VIP
- 2020泰和安TG3100广播控制盘安装使用说明书.pdf VIP
原创力文档

文档评论(0)