gcc -Dは、プリプロセッサが使用するマクロを定義します。
$ gcc -Dname [options] [source files]
[-o output file]
$ gcc -Dname=definition [options]
[source files] [-o output file]
ソースファイルmyfile.cを書き込みます:
// myfile.c
#include <stdio.h/
void main()
{
#ifdef DEBUG
printf("Debug run\n");
#else
printf("Release run\n");
#endif
}
myfile.cをビルドし、DEBUGを定義して実行します。
$ gcc -D DEBUG myfile.c -o myfile
$ ./myfile
Debug run
$
または、myfile.cをビルドして、DEBUGを定義せずに実行します。
$ gcc myfile.c -o myfile
$ ./myfile
Release run
$