Chinaunix首页 | 论坛 | 博客
  • 博客访问: 114518
  • 博文数量: 83
  • 博客积分: 2531
  • 博客等级: 少校
  • 技术积分: 865
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-31 20:40
文章分类

全部博文(83)

文章存档

2011年(7)

2010年(76)

我的朋友

分类: C/C++

2010-04-12 15:29:32

Makefile书写命令
1、显示命令
make执行时
带入make参数 "-n" 或"--just-print" 其只是显示命令,但不执行
功能:利于调试Makefile,看看书写的命令执行起来是什么样子,或是什么顺序。
在命令前加“@”字符时,则此命令不被make显示出来
make 参数"-s" 或"--slient"  则是全面禁止命令的显示
2、命令的执行
上面一条命令的结果会被下一条使用时,应该将此两条命令写在一行上,用分号隔开。
make默认使用UNIX的标准Shell--/bin/sh来执行命令
MS-DOS比较特殊,它没有SHELL环境变量,你也可以指出。
如果指定了UNIX风格的目录形式,
首先,make会在SHELL所指定的路径中寻找命令解释器
如果找不到,就在当前盘符中的当前目录中寻找
如果再找不到,其就会在PATH环境变量中所定义的所有路径中寻找
MS-DOS中,如果你定义的命令解释器没找到,其会给你的命令解释器加上诸如".exe",".com",".bat",".sh"等后缀。
3、命令出错
忽略命令的出错,可以在命令前加上"-"(在Tab键之后),标记为不管命令出不出错都认为是成功的。
或者给make加上 "-i" 或是 "--ignore-errors" 参数,这表示所有命令都会忽略错误
如果一个规则以".IGNORE"作为目标的话,这个规则中的所有命令将会忽略错误。
make "-k" 或是 "--keep-going" 表示某规则中的命令出错了,终止此规则的执行,但继续执行其他规则
4、嵌套执行make
模块编译和分段编译时,可以将文件按照模块功能放在不同的目录中,并在每一个目录都写一个该目录的Makefile,这样就不必把所有的东西写在一个Makefile中
 
 
 
 
 
 
 
 
 
 
 
 
阅读(510) | 评论(0) | 转发(0) |
0

上一篇:昭君

下一篇:gcc 和 g++的区别(转)

给主人留下些什么吧!~~