Makefile知识点
1.标准Makefile文件示例如下:
#把.o .C .cxx .cpp .hxx .h添加到后缀列表中。
.SUFFIXES: .o .C .cxx .cpp .hxx .h
#设置变量并赋值,方便后面编译链接
CC= g++ -D_LINUX_ -fpermissive -Wall -Wno-format-y2k
DEBUG=-g
C++FLAGS= $(DEBUG) -D_PTHREAD_USE_D4 -D_ORACLE_ -DHISSVR_A -D_OSVer4 -DONE_DAY -D_EXTENSIONS_
LIB_DIR = -L$(HOME)/lib -L$(HOME)/src/lib -L$(HOME)/service/src/lib
LIB= -ldl -lpthread -lrtdb_api -ldcisg_dm -lmode_manage -lrte -lservices
INC_DIR = -I./include -I$(HOME)/src/include
OBJS = maintenance_ticket.o
#.cpp.o是老式的“后缀规则”,编译器将会自动将.cpp识别为源文件后缀,而.o识别为输出文件后缀。特别需要注意的是,后缀规则不允许任何依赖文件,但也不能没有命令。
#$^表示所有依赖,($<表示第一个依赖)($@表示目标文件).也就是将所有的.cpp文件都生成对应的.o文件。
.cpp.o:
$(CC) $(C++FLAGS) $(INC_DIR) -c $<
.cxx.o:
$(CC) $(C++FLAGS) $(INC_DIR) -c $<
maintenance_ticket : maintenance_ticket.o
$(CC) $(C++FLAGS) $(INC_DIR) -o maintenance_ticket maintenance_ticket.o $(LIB_DIR) $(LIB)
clean:
rm -f $(OBJS)
#伪目标,即使当前存在clean文件对象,也会继续执行这个伪目标。
.PHONY: clean
Makefile知识点的更多相关文章
- makefile知识点归纳的
以一个样例開始,文件文件夹结构例如以下 ---------(当前文件夹)-----------main.c | |------- ...
- Makefile知识点总结
1.=,:=,+=区别 = 是最基本的赋值 := 是覆盖之前的值 ?= 是如果没有被赋值过就赋予等号后面的值 += 是添加等号后面的值 .“=” make会将整个makefile展开后,再决定变量的值 ...
- Makefile 知识点
$@ $@ is the name of the target. $? The $? macro stores the list of dependents more recent than the ...
- 剑指Offer——知识点储备--Linux基本命令+Makefile
剑指Offer--知识点储备–Linux基本命令 1.linux下查看进程占用cpu的情况(top): 格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 主要参 ...
- makefile文件知识点记录
1赋值 = 是最基本的赋值:= 是覆盖之前的值?= 是如果没有被赋值 += 是添加等号后面的值 1.“=” make会将整个makefile展开后,再决定变量的值.也就是说,变量的值将会是整个make ...
- Makefile常用知识点
格式 目标:最终要去生成的文件, 定格写,后面是冒号(冒号后面是依赖) 依赖:用来生成目标的源材料 命令:加工的方法,命令前面一定是Tab, make的过程就是使用命令将依赖加工成目标的过程 工作原理 ...
- Makefile 赋值 函数定义 等小知识点
1.赋值 == 到用的时候实际才去赋值:= 立刻赋值?= 未赋值才赋值+= 2.多层变量 多层变量引用(各种复杂组合...)a =bb= cc= dd =1$($($($(a)))) 最终等于1 3. ...
- makefile小例子
makefile的知识点应该很多,看网上的很多教程就能看出来,长的可以写一本书.记录一下自己用的一个简单的makefile, 方便以后查找. 先看一下程序的目录结构: [root@localhost ...
- php高级面试题知识点(转载)
php高级面试题知识点大全 时间:2016-01-26 06:36:22来源:网络 导读:php高级面试题知识点大全,本套面试题内容包括php魔术方法.php单点登录.linux基本命令.前端开发技术 ...
随机推荐
- PyQt6的在线安装与环境配置
https://www.jianshu.com/p/185e277e0058 一,安装好Python,Pycharm 二,安装或更新pip C:\> python -m pip install ...
- JavaScript - 常用对象相关
1. String对象 length : 字符串的长度 charAt(index) : 返回指定位置的字符串, 下标从0开始 indexOf(str) : 返回指定的字符串在当前字符串中首次出现的位置 ...
- 【转载】OpenCL实现矩阵相乘
矩阵相乘其实就是前一个矩阵的每一行乘以后一个矩阵的每一列,然后将乘后的每一个数字相加,得到结果矩阵的指定位置的数值.具体算法回顾一下线性代数即可.但是这种行列相乘其实都是独立的,如果是CPU计算必须串 ...
- win10 mysql5.7指定某个配置文件启动
点击开始菜单,搜索cmd.exe,左击以管理员身份运行 C:\Users\Administrator>cd C:\Program Files\MySQL\MySQL Server 5.7\bin ...
- (转)Android中px与dip,sp与dip等的转换工具类
功能 通常在代码中设置组件或文字大小只能用px,通过这个工具类我们可以把dip(dp)或sp为单位的值转换为以px为单位的值而保证大小不变.方法中的参数请参考http://www.cnblogs.co ...
- Ubunto 无法连接ssh客服端
解决办法: (1)查看ip地址是否冲突 我在单位的虚拟机ip地址是192.168.14.85,与其它机器冲突了.改成了192.168.14.83 (2)关闭Ubuntu14.04的防火墙 root ...
- (36)C# COM交互
调用DLL [DllImport("standerMFC.dll")] public static extern int PReadUID(ref HHFC_SET stru); ...
- HTML基本案列
<html> <head> <!-- meta :告诉浏览器,如何翻译汉字 http-equiv :content-type 内容类型 详细内容有后面的值指定 conte ...
- day 72 Django基础七之Ajax
Django基础七之Ajax 本节目录 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解) 六 同源策略与 ...
- 《DSP using MATLAB》Problem 8.37
代码: %% ------------------------------------------------------------------------ %% Output Info about ...