makefile中的-C选项到底是干什么的

winner8080 2010-05-08 05:53:31
比如如下makefile:
main.o : main.c defs.h
cc -c main.c

这里的-c是什么意思呢,
看遍了很多的makefile的文章,只找到-c dir这个选项的解释.
...全文
19436 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
mstlq 2010-05-09
  • 打赏
  • 举报
回复
google “gcc 参数详解” "cl 参数详解"等类似关键字
winner8080 2010-05-09
  • 打赏
  • 举报
回复
从哪里可以找到编译器的这些选项呢,
我想找来系统看看。
谢谢大家了。
hjf0102 2010-05-08
  • 打赏
  • 举报
回复
good
旭子 2010-05-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 dengxu11 的回复:]

Makefile -c 编译.c或汇编源文件,但是不作连接. 编译器输出对应于源文件的目标文件..
Makefile -S 编译后即停止,不进行用汇编器生成目标文件.o,输出汇编文件.
Makefile -E 预处理后即停止,不进行编译. 预处理后的代码默认送往标准输出,当然你可以重定向到文件嘛。
-C 告诉预处理器不要丢弃注释. 配合-E使用
-P 告诉预处理器不要产生#line命令.……
[/Quote]
Makefile -c 编译.c或汇编源文件,但是不作连接. 编译器输出对应于源文件的目标文件..
Makefile -S 编译后即停止,不进行用汇编器生成目标文件.o,输出汇编文件.
Makefile -E 预处理后即停止,不进行编译. 预处理后的代码默认送往标准输出,当然你可以重定向到文件嘛。
-C 告诉预处理器不要丢弃注释. 配合-E使用
-P 告诉预处理器不要产生#line命令.……

不好意思我笔误,别误导了大家。。
旭子 2010-05-08
  • 打赏
  • 举报
回复 1
[Quote=引用 2 楼 fox000002 的回复:]

-c 小写,表示只编译,不链接

-C 大写,切换到指定目录再执行 make 过程,makefile 在这个指定目录里面
[/Quote]
2楼的朋友你那个-C的解释是make本身的内建命令选项,是给make程序用的 不是给cc用的,
make 程序接受了 -C选项面在参数它自己先跳到 -C后面选项的目录中在解析Makefile执行Makefile的命令的。。。和cc没关系。。。。
旭子 2010-05-08
  • 打赏
  • 举报
回复
Makefile -c 编译.c或汇编源文件,但是不作连接. 编译器输出对应于源文件的目标文件..
Makefile -S 编译后即停止,不进行用汇编器生成目标文件.o,输出汇编文件.
Makefile -E 预处理后即停止,不进行编译. 预处理后的代码默认送往标准输出,当然你可以重定向到文件嘛。
-C 告诉预处理器不要丢弃注释. 配合-E使用
-P 告诉预处理器不要产生#line命令. 配合也是同样-E选项使用
因为上面2个命令是看预处理后的代码如果不加-E编译直接编译过去了。
还有很多很多,楼主我就不一一列举了哈
fox000002 2010-05-08
  • 打赏
  • 举报
回复 1
-c 小写,表示只编译,不链接

-C 大写,切换到指定目录再执行 make 过程,makefile 在这个指定目录里面
mstlq 2010-05-08
  • 打赏
  • 举报
回复
只编译不连接

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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