[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[fol] Re: gccコンパイルオプションについて


小川と申します.

At Sat, 18 Jan 2003 22:01:05 +0900,
Koji Tsubota  <caasr905 _at_ hcn.zaq.ne.jp> wrote:
> 
> Kojiです。
>
> CPPFLAGS=-DKOJI
> で実現できるのが分かりましたが
> 他の方法はないでしょうか?

gcc には -imacros というオプションがあり,
これを使うと以下のようなことが可能です.

[使用例]

○ ソースファイル main.c
$ cat main.c
int main(int argc, char **argv)
{
   printf("%s %d\n", S1, NUM1);
   return 0;
}

○ 別に用意したマクロ定義用ファイル macros.h
$ cat macros.h
#define S1 "USO"
#define NUM1 800

○ 一応 Makefile
$ cat Makefile
all:
        gcc main.c -imacros macros.h

○ コンパイル & 実行
$ make
gcc main.c -imacros macros.h
$ ./a.out
USO 800

この方法だと余計なファイルが一つ増えてしまいますが,
ソースに手を加えることは避けられます.
仮に -D の使用回数に制限がある環境があるとしても,
その影響は受けないと思われます.

/* ***************************
 OGAWA, Daisuke
 e-mail: d_ogawa _at_ par.odn.ne.jp
 * *************************** */

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
References: