[memo][プログラミング] makeについて調べてみた

雑学

担当夫
C言語プログラミングでお世話になる”make”。よく分かっていないので調べてみました。

makeはC言語だけの機能ではない

Wikipediaによれば、「プログラムのビルド作業を自動化するツール」とある。該当環境で利用出来るコマンドであれば、その自動化に取り入れられるようです。

必要最低限のファイルのみ更新する

Wikipediaによれば、「Aというファイルを処理してBというファイルを生成するとき、タイムスタンプを参照し、AがBより新しいときのみ更新作業に入る」とあります。
確かによく分からないままmakeコマンド使う時がありまして、うまく動いてくれなくて頭を悩ませた事がありました。タイムスタンプに依存するという癖があるのですね。

Hello World的なmakefileの使い方

--makefile書式-----
生成物:使用ソース
(tab)実行コマンド
-------------------
$ cat hello_world.c
#include 
main(){
    printf("Hello World\n");
    return 0;
}

$ cat makefile
hello_world_c:hello_world.c
        gcc hello_world.c -o hello_world_c

$ make
gcc hello_world.c -o hello_world_c

$ ./hello_world_c
Hello World

関連リンク

【まとめ】プログラミング、IT全般【私の備忘録なのでお気になさらず】
【まとめ】C言語