让我们来嚼makefile---make给makefile内部变量赋值
来源:互联网 发布:淘宝魔镜 编辑:程序博客网 时间:2024/05/20 23:59
场景:
一般程序都会有两个版本,针对出现问题需要定位的调试的版本和面向用户的发布的版本,这两个版本在代码级别上很大的区别在于是否把#ifdef DEBUG #endif编译进入二进制文件当中,而相对于makefile来说,就是在命令行里面加或者不加-D DEBUG的问题。例子: gcc -g -o main test_macro.c-D DEBUG 这个会把#ifdef和#endif之间的内容编译进去,如果这里面的内容是日志,错误信息的话,方便我们定位问题和解决问题。现在就会有两种方案去编译调试和发布版本, 一种是在makefile里面进行删除-D DEBUG 编译生成发布版本,增加-D DEBUG编译生成调试版本,这样会显得我们开发人员的智商有待提高;更好的一种方法是在makefile内部定义一个变量usedebug=0, 根据变量usedebug的值进行不同的编译命令, 然后再由make 命令在外部进行设置usedebug的值就可以生成不同的编译版本。
解决方案:
执行命令 make useDebug=1; make useDebug=0; 就可以执行不同的编译命令,生成不同的版本了。
需要注意的是: make useDebug=1 等号两边不能有空格,否则会报错的。还有一个ifeq else endif控制语句前面都不需要tab键,在一行的开始处写就是,否则也会报错。
0 0
- 让我们来嚼makefile---make给makefile内部变量赋值
- 让我们来嚼makefile: include
- 让我们来嚼makefile---wildcard和patsubst
- 让我们来嚼makefile: 自动推导功能
- 让我们来嚼makefile---makefile:5: *** 遗漏分隔符 。 停止
- makefile变量赋值
- Makefile中四种变量赋值
- makefile 变量赋值规则
- makefile变量赋值
- Makefile之变量赋值
- Makefile的内部变量
- make传递给Makefile参数
- makefile 中变量的赋值
- Makefile中 变量赋值含义
- Makefile 变量定义(*赋值)
- makefile 中变量的赋值
- makefile 变量的赋值方式
- make Makefile
- thinkphp getField( )和field( )
- jquery easyui tree改变默认图标
- MySQL控制台执行SQL脚本
- 数据库DB-MSSQL 系统了解
- FMALV********响应回车事件
- 让我们来嚼makefile---make给makefile内部变量赋值
- Oracle:sqlplus命令行登录方法 as sysdba
- Android中通过uri查询数据库字段
- 用文件保存的学生名单
- ExtJS学习04Store
- nyoj 628 小媛在努力 【搜索】
- 成长不可或缺的财富——肥皂剧和八卦节目带给我的成长
- 移动游戏后端:开发还是购买?你必须知道的6件事
- 8款帅酷的HTML5/CSS3 3D动画、图片、菜单应用