GNU make と makefile の構文は Linux シェルや bash と似ていますが、同じではありません。たとえば、中かっこはシェルや bash とは異なります。
ただし、シェルの他の多くのコマンドはそのまま使用できます(例:echo、cdなど)。
GNU Makeをシェルの上にあるインタプリタと考えるのは正しいですか?
ベストアンサー1
GNU MakeをLinuxシェルの拡張と考えるのは正しいですか?
「シェル拡張」という用語を定義する方法によって異なります。
「シェル拡張」では、シェルに機能を追加するすべてのプログラムを定義できます。
この場合、すべてのコマンドラインベースのプログラムは「シェルの拡張」になります。
しかし、Makefileが「改善されたシェルスクリプト」と見なすことができるかどうか疑問に思うなら、答えは確かに「いいえ」です。
Makefileルールのコマンドはシェルコマンド(シェルスクリプトの行と同じ)ですが、Makefileはシェルスクリプトとはまったく異なります。
そして(少なくとも99%の場合)、有効なMakefileは有効なシェルスクリプトではなく、その逆も同様です。
シェルスクリプトに似たMakefileを書くことができますが、これはまったく意味がありません。