一个makefile的问题--路过捧个场

pripor 2007-05-15 09:44:50
这是一个开源程序的makefile文件,支持windows linux平台
内容如下:

SUBDIRS=lib plugins utils sample
...
all clean: $(SUBDIRS)
!cd $? && $(MAKE) /f NTMakefile /$(MAKEFLAGS) VERBOSE=0 $@

大致意思明白,有几个问题:
1、cd 前面的感叹号‘!’什么意思
2、第二个参数(MAKEFLAGS)什么意思
3、这里的$?和@$代表什么

欢迎指教,有资料推荐更佳~~~~,谢谢
...全文
902 28 打赏 收藏 转发到动态 举报
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
UltraBejing 2008-05-01
  • 打赏
  • 举报
回复
接分是王道!
gunsand 2007-07-10
  • 打赏
  • 举报
回复
$?和@$ 是上面第一个参数和所有的参数的意思.我也有点忘记鸟。
cceczjxy 2007-06-23
  • 打赏
  • 举报
回复
cd $? 应该这样理解:!cd 命令的上一cd 条命令如果是 cd ab 则!cd 变为cd ab
上一条命令不包括cd .. 和 cd .
cceczjxy 2007-06-23
  • 打赏
  • 举报
回复
SUBDIRS=lib plugins utils sample

all clean: $(SUBDIRS)
!cd $? && $(MAKE) /f NTMakefile /$(MAKEFLAGS) VERBOSE=0 $@


应该接合起来解释,
!cd $? 应该这样理解:!cd 命令的上一cd 条命令如果是 cd ab 则!cd 变为cd ab
!cd $? 就是看cd 到一个目录是否能成功.

$(MAKEFLAGS) //取变量MAKEFLAGS 的值

$@ //目标名

a:b
echo $@ //echo a


icosagon 2007-06-21
  • 打赏
  • 举报
回复
手工写makefile是一项浩大的工程,可以用 autoconf,automake自动生成,比手工写makefile要省事
的多,当然还是得写一些东西
huashizhixin 2007-06-17
  • 打赏
  • 举报
回复
路过捧场
mymtom 2007-06-17
  • 打赏
  • 举报
回复
路过!
zzyjsjcom 2007-06-07
  • 打赏
  • 举报
回复
路过捧个场
cmail 2007-06-04
  • 打赏
  • 举报
回复
see see
-----------------------
CSDN 论坛助手
http://china-csdn.cn
spofmy 2007-06-04
  • 打赏
  • 举报
回复
顶一下
zzyjsjcom 2007-05-31
  • 打赏
  • 举报
回复
gnu make中文手册.rar

参考网站:
http://www.linuxsir.org/main/doc/gnumake/GNUmake_v3.80-zh_CN_html/
totoorange 2007-05-30
  • 打赏
  • 举报
回复
关注~
dai_weitao 2007-05-30
  • 打赏
  • 举报
回复
帮顶,期待答案
gogovista 2007-05-30
  • 打赏
  • 举报
回复
历经努力
宣布放弃
基本是不可能任务~~~~~~~~
fengdream 2007-05-24
  • 打赏
  • 举报
回复

(MAKEFLAGS)是变量
如:MAKEFLAGS = -Wall

而$(MAKEFLAGS)表示引用该变量
如:gcc -o $(MAKEFLAGS) test test.c
vincen_cn 2007-05-24
  • 打赏
  • 举报
回复
不懂 , 捧场.
spofmy 2007-05-23
  • 打赏
  • 举报
回复
再路过再捧场
cangwu_lee 2007-05-23
  • 打赏
  • 举报
回复
表示已经参与
gogovista 2007-05-15
  • 打赏
  • 举报
回复
虫子的身影会出现在csdn的任何角落~~~~
spofmy 2007-05-15
  • 打赏
  • 举报
回复
捧场ing...
加载更多回复(8)

5,531

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 模式及实现
社区管理员
  • 模式及实现社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧