※ ChatGPTを利用し、要約された質問です(原文:makeの変数設定の優先度)
makeの変数設定の優先度
オライリーの"C++クックブック"の日本語版を読んでいます。
p62のGNU makeの変数の説明について、実際の動作とずれがあるように思います。
以下の文がp62にあります。
「makefile自体に指定された値の方が、コマンドラインで指定された値よりも優先される。」
以下が作成したmakefileです。
-----
XXX=test
all:
@echo $(XXX)
-----
make
と実行すると
test
と表示されます。
make XXX=kkk
と実行すると
kkk
と表示されます。
makefile自体に指定された値の方よりも、コマンドラインで指定した値が優先されているように思われます。
以下のページでもコマンドライン指定の方が優先度が高いように書いているように思われます。
http://www.02.246.ne.jp/~torutk/cxx/make/gnumake.html
C++クックブックの日本語化の過程で間違いが入ったのでしょうか。
お礼
回答ありがとうございます。 やはりコマンドライン指定が優先されるのですね。 > 「コマンドラインで指定しようとどうしようと Makefile に書いてあるようにしたい」ということであれば, それなりに可能です. こういうこともできるのですね。 もう少しmake関連の資料を読み進めていきます。 ありがとうございました。