Makefile 编写实例
2024-08-28 17:11:35
make命令常用的三个选项:
1.-k:它的作用是让make命令在发现错误的时候仍然继续执行.我们可以利用这个选项在一次操作中发现未编译成功的源文件.
2.-n:它的作用是让make命令输出将要执行的操作步骤,而不是真正执行这些操作.
3.-f <filename>:它的作用是告诉make命令将哪个文件作为makefile文件.如果未使用这个选项,make命令将依次查找当前目录下的makefile文件,Makefile文件.
Makefile文件中,将第一个目标定义为all,然后列出其他从属目标,这样可以明确地告诉make命令,在未指定特定目标的时候,默认情况下应该创建哪个目标.
all: myapp
#which compiler, 符号#表示注释.
CC = gcc #定义一个宏,用$(CC)引用
#Where to install
INSTDIR = /usr/local/bin
#Where are include files kept
INCLUDE = .
#Options for development
CFLAGS = -g -Wall -ansi myapp: main.o .o .o
$(CC) -o myapp main.o .o .o #必须以tab键开头,空格不行
main.o: main.c a.h
$(CC) -I$(INCLUDE) $(CFLAGS) -c main.c
.o: .c a.h b.h c.h
$(CC) -I$(INCLUDE) $(CFLAGS) -c .c
.o: .c a.h b.h c.h
$(CC) -I$(INCLUDE) $(CFLAGS) -c .c clear:
#rm命令以-开头,含义是让make命令忽略rm命令执行的结果.
-rm main. .o .o
install: myapp
#必须在每行后面添加反斜杠\,让所有这些shell脚本命令在逻辑上处于同一行.
#下面这个命令以@开头,表示make在执行这些规则之前不会在标准输出上显示命令本身.
@if [ -d $(INSTDIR) ]; \
then \
cp myapp $(INSTDIR); \
chomd a+x $(INSTDIR)/myapp; \
chomd og-w $(INSTDIR)/myapp; \
echo "Installed in $(INSTDIR)"; \
else \
echo "Sorry, $(INSTDIR) does not exit"; \
fi
下面三个命令:
make
make clear
make install
最新文章
- 安装DRools开发环境
- MyBatis的resultMap
- 2016年11月24日--面向对象、C#小复习
- ajaxFileUpload 异步上传数据
- 【代码笔记】iOS-检测手机翻转
- EF 实体映射
- Oracle冷备份及其恢复
- java 对象传递 是 值传递 还是 引用传递?
- [置顶] 手机通过socket控制电脑关机,重启,注销等功能
- Selenium 进行web自动化测试
- Android 解决服务端验证码问题
- POJ2761---Feed the dogs (Treap求区间第k大)
- 久未更 ~ 三之 —— CardView简单记录
- Centos6.X搭建Squid为YUM做代理
- angular2路由与express路由冲突的问题
- 1.11 flask
- centos6.9设置桥接网络模式方法
- burpsuite的使用(一)
- 20155320 2016-2017-2《Java程序设计》第八周学习总结
- 获取select 的 val 和 text [转引]
热门文章
- 【转】mysql中set autocommit=0与start transaction的关系
- uoj#399. 【CTSC2018】假面(概率期望)
- appium自动化测试框架——在python脚本中执行dos命令
- kettle的使用(ETL,数据仓库技术)
- java获取本机ip的方法
- 6.计算字段 ---SQL
- beanshell解析json(从简单到复杂)
- 几款常用的高质量web前端框架
- 管道是如何随着WebHost的开启被构建出来的?
- webpack.config.js====output出口文件的配置