MakefileでHello World!

2024/09/23に公開

こんにちは、沙代です。
Makefileって、C言語使っていなくてもかなり面白いですよね!今日はHello worldしてみたいと思います。

環境
MacOS: macOS Montery 12.6.2 (Apple M1 Pro)
iTerm2: 3.5.4
make: GNU Make 3.81

準備します

Makefile
hello:
	@echo "Hello, world!"
  • 一番初めのtarget(hello)がデフォルトで実行されます。

(もし、@echoではなく、echoを使うと、実行したコマンドも表示されます)

実行します

$ ls
Makefile
$ make
Hello, world!

できました!

make helloでももちろん大丈夫です!

$ make hello
Hello, world!

片付け

$ rm Makefile

おまけ

個人的には、.PHONYを使用して、ファイル作成ではないことを明示したりします。targetがallじゃないので、.DEFAULT_GOALも使用したりします。

Makefile
.DEFAULT_GOAL = hello

.PHONY = hello
hello:
	@echo "Hello, world!"
$ make
Hello, world!

最後に

コンパイルいらないのスクリプト言語みたいですね!(冗談ですよ笑)

Discussion