##步骤简要表述:
- 创建 configure.ac 文件
- 在根目录及各个子目录下依次创建Makefile.am文件。
- 使用命令“autoreconf –install” 命令自动生成confiugre文件
- 执行新生成的脚本 configure
- 执行make文件。
1 | TARGETS = 111.cpp 222.cpp 333.cpp |
#define LOGSTRINGS(fm, ...) printf(fm,__VA_ARGS__)
使用方法LOGSTRINGS("hello, %d ", 10);
但是必须有第二个参数!否则编译无法通过。
改进#define LOGSTRINGS(fm, ...) printf(fm, ##__VA_ARGS__)
LOGSTRINGS("hello, world\n");
最简单的方法 #define LOGSTRINGS(...) printf(__VA_ARGS__)
#ifdefine DEBUG
printf(“debug message\n”);
#endif
对于这段代码,平时调试的时候就加上-DDEBUG 发布时不用-D选项
与之对应的是-UMACRO参数,相当于#undef MACRO,取消宏定义
-g 生成调试信息
-g生成调试信息,这对使用gdb进行调试是必须的。带有调试信息的文件要比普通文件要大,但不影响运行,可以用strip命令除于其中的调试信息
-c指于gcc只进行编绎,不连接
-ansi 指示gcc只支持ansi c标准语法
-o 指定输出文件名
-O 指定优化处理
-O0不优化 -O1或-O 一级优化 -O2 二级优化…-O3,-O4
级别越高,,代码越优,编绎时间越长。
-m486 针对特定的目标计算机进行优化,默认是386
-w 关闭编译器警告信息