18.2. 例: Makefile を使用した C プログラムの構築

以下の例の手順に従い、Makefile を使用してサンプル C プログラムを構築します。

前提条件

手順

  1. hellomake ディレクトリーを作成して、そのディレクトリーに移動します。

    $ mkdir hellomake
    $ cd hellomake
  2. 以下の内容で hello.c ファイルを作成します。

    #include <stdio.h>
    
    int main(int argc, char *argv[]) {
      printf("Hello, World!\n");
      return 0;
    }
  3. 以下の内容で Makefile ファイルを作成します。

    CC=gcc
    CFLAGS=-c -Wall
    SOURCE=hello.c
    OBJ=$(SOURCE:.c=.o)
    EXE=hello
    
    all: $(SOURCE) $(EXE)
    
    $(EXE): $(OBJ)
            $(CC) $(OBJ) -o $@
    
    %.o: %.c
            $(CC) $(CFLAGS) $< -o $@
    
    clean:
            rm -rf $(OBJ) $(EXE)
    注意

    Makefile レシピの行は、Tab 文字で開始する必要があります。ブラウザーから上記のテキストをコピーする場合、スペースを代わりに貼り付けてしまう可能性があります。この場合、手動で修正します。

  4. make を実行します。

    $ make
    gcc -c -Wall hello.c -o hello.o
    gcc hello.o -o hello

    このコマンドで、実行可能ファイル hello が作成されます。

  5. この実行可能ファイル hello を実行します。

    $ ./hello
    Hello, World!
  6. Makefile ターゲットの clean を実行して、作成されたファイルを削除します。

    $ make clean
    rm -rf hello.o hello

関連情報