QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1077|回复: 4

makefile文件中的参数涵义问题!

[复制链接]
发表于 2004-11-26 11:28:17 | 显示全部楼层 |阅读模式
arm里面的makefile文件中一般会有这样的编译条件:CFLAGS=-Walll -Os -Dlinux -D_linux_ -Dunix -D_uClinux_ -DEMBED
关于Dlinux -D_linux_ -Dunix -D_uClinux_ -DEMBED这几个参数有人知道他们具体的含义吗?
发表于 2004-11-26 11:57:25 | 显示全部楼层
就是定义了一些宏啊
回复

使用道具 举报

 楼主| 发表于 2004-11-26 22:16:43 | 显示全部楼层

具体点的!

哪里有更详细地说明,我不知道是否所有的编译都需要,有没有什么具体的含义?比方说有针对性地?!!
回复

使用道具 举报

发表于 2005-2-19 11:03:25 | 显示全部楼层
-Dlinux -D_linux_ -Dunix -D_uClinux_ -DEMBED就是通过GCC分别定义宏linux,_linux_,unix,_uClinux_.这些宏可以传递到所要编译的C代码中.主要作用是为了进行条件编译.如果在你的C代码中使用了如下:
......
#ifdef linux
this is support linux code;
#endif
......
#ifdef _uClinux_
  this is support uClinux code;
#endif
....
所以在使用GCC编译的代码中可能没有显式的条件编译的宏定义.如果想要确定是否定义了某一个宏.可能就要查看GCC的CFLAGS所使用的编译选项.以确定那部分是有效的代码.
回复

使用道具 举报

发表于 2005-7-22 16:04:06 | 显示全部楼层
XHBDAHAI多谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 02:02 , Processed in 0.045902 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表