CUR_DIR = $(shell pwd)

 CFLAGS = -g -Wall
GCC = gcc
GXX = g++ TARGET = exe.out SRC_FILES += $(shell find $(CUR_DIR) -name *.cc) \
+= $(shell find $(CUR_DIR) -name *.cpp) OBJS = fatal-impl.o log.o INCLUDE += -I.
RM = rm -f LINK =
CFLAGS = -DNS3_LOG_ENABLE -g -Wall -O0 all: $(OBJS) test.o
$(GXX) $(CFLAGS) $^ -o $(TARGET) $(LINK) test.o: test.cpp
$(GXX) -c $(CFLAGS) $^ -o $@ $(OBJS): %.o : %.cc
$(GCC) -c $(CFLAGS) $(INCLUDE) $< -o $@ .PHONY : clean
clean:
$(RM) $(OBJS)
$(RM) $(TARGET)

上面-D选项放在-c选项前宏定义不起作用,修改放在-c选项后面后ok,

相当于在需要编译的文件最开始位置添加#define xxx

makefile 中定义宏位置需要注意一下的更多相关文章

  1. Makefile中进行宏定义-***

    实际上是gcc命令支持-D宏定义,相当于C中的全局#define: gcc -D name gcc -D name=definition Makefile中可以定义变量(和宏很像),但是是给make解 ...

  2. Makefile中用宏定义进行条件编译(gcc -D)/在Makefile中进行宏定义-D【转】

    本文转载自:http://blog.csdn.net/maopig/article/details/7230311 在源代码里面如果这样是定义的:#ifdef   MACRONAME//可选代码#en ...

  3. Makefile ------ 在Makefile中进行宏定义-D

    在Makefile中我们可以通过宏定义来控制源程序的编译.只要在Makefile中的CFLAGS(变量名随意)中通过选项-D来指定你于定义的宏即可. 如:CFLAGS += -D _YUQIANG在编 ...

  4. 26.怎样在Swift中定义宏?

    Swift 中没有宏定义,苹果建议使用let 或者 get 属性来替代宏定义值.虽然没有#define,但我们仍然可以使用 #if 并配合编译的配置来完成条件编译.下面会列出Swift项目开发中的一些 ...

  5. Makefile中宏定义

    实际上是gcc命令支持-D宏定义,相当于C中的全局#define: gcc -D name gcc -D name=definition Makefile中可以定义变量(和宏很像),但是是给make解 ...

  6. makefile中使用变量

    makefile里的变量就像一个变量,变量的作用主要如下: (1)保存文件名列表. (2)保存编译器的参数. makefile中的变量是用一个字符串在makefile中定义的,这个文本串就是变量的值. ...

  7. Makefile中的变量和shell变量

    我们在写makefile时 多多少少会用到shell脚本, 对于变量的在shell中的使用有一些要注意的细节.让我们从一个简单的makefile来看看. 注意makefile中一定要有一个目标,且一定 ...

  8. makefile变量定义应用到c语言

    makefile是为组织程序工程的,其定义的宏怎样应用到c程序中呢? 我们知道Makefile中可定义变量或导出变量,make命令可定义变量:编译器(如gcc)可通过CFLAGS定义宏. 但如何才能使 ...

  9. IOS中利用宏将RGB值转换为UIColor(转)

    可以在pch文件中定义宏,这样整个项目就都可以用了! #define UIColorFromRGBValue(rgbValue) [UIColor colorWithRed:((float)((rgb ...

随机推荐

  1. hdu 3068 最长回文 manacher算法(视频)

    感悟: 首先我要Orz一下qsc,我在网上很难找到关于acm的教学视频,但偶然发现了这个,感觉做的很好,链接:戳戳戳 感觉这种花费自己时间去教别人的人真的很伟大. manacher算法把所有的回文都变 ...

  2. ibatis插入数据后返回自增长的主键

    insert into testTable ( activity_id,activity_title values ( #{activityId,jdbcType=INTEGER}, #{activi ...

  3. ylbtech-dbs:ylbtech-6,record(生活记录)

    ylbtech-dbs:ylbtech-6,record(生活记录) -- =============================================-- DatabaseName:R ...

  4. android之location03

    private class ButtonListener implements OnClickListener { @Override public void onClick(View v) { // ...

  5. java从控制台读取数据的方式

    1. Scanner sc = new Scanner(System.in); String s = sc.readLine(); 2. BufferReader br = new BufferRea ...

  6. CRM plugin 激活 停用 事件

    需要注册 SetState 和 SetStateDynamecEntity

  7. Export excel file using web API

    使用MVC controller输出excel的例子,自不待言,例子满天飞. 由于本项目使用的是Asp.net MVC API,因此在本项目使用API,实现了文件下载功能.代码的原理很简单,基本上是老 ...

  8. esriSRGeoCS2Type Constants

    ArcGIS Developer Help  (Geometry)     esriSRGeoCS2Type Constants More geographic coordinate systems. ...

  9. cocos2d-x 利用CCLabelTTF制作文字描边与阴影效果的实现方法

    // // myttf.h// // Created by 王天宇 on 14-6-12. // // #ifndef ____SLG__myttf__ #define ____SLG__myttf_ ...

  10. Memcached、Redis和MongoDB的区别

    Memcached和Redis都是内存数据库. Memcached是多线程运行的: Redis单线程是单线程运行的: MongoDB是文档型的非关系型数据库..Net:RavenDB.