基本を再チェック〜gcc〜

YAMAMORI Takenori ●yamamori

■コラム■ 標準入力をコンパイル!?

hello.cのように,ちょっとした短いテストプログラムをコンパイルする際, gccで標準入力をコンパイルすることにより, いちいちファイルを作らずにコンパイルすることができます.

gccでは,入力ファイル名として「-」を指定すると, それは標準入力であると解釈されます. したがって,「-」をコンパイルすればよいのです. ただし,単に「-」を指定しただけでは, ファイル名の拡張子に「.c」がないため, gccは入力された言語の種類を判別できません. そこで,「-xc」というオプションを付けて, これがC言語のソースであることを明示してやります. すると,以下のようにちゃんとコンパイルできます.

●標準入力のコンパイル
$ gcc -xc - -o hello
#include <stdio.h>            ← ソースをキーボードから直接入力
main()                        ←   〃
{                             ←   〃
  printf("Hello World !\n");  ←   〃
  return 0;                   ←   〃
}                             ←   〃
                              ← [Ctrl]+[D]を入力
$ ./hello
Hello World !                 ← ちゃんと実行できる

To『基本を再チェック〜gcc〜』[index]


このページは、技術評論社 Software Design 2001年2月号、『プログラムのコンパイルとリンク』の原稿を元に、Web 用に再構成したものです。
To 謎の処理系 SunOS 4.1.4 with Linux/FreeBSD[Home]
yamamori