エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント1件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
make の ifdef はわかりにくい
シェルにおいて $ FOO= とすると、シェル変数 FOO は空ではあるが、定義はされている。 変数 FOO を未定... シェルにおいて $ FOO= とすると、シェル変数 FOO は空ではあるが、定義はされている。 変数 FOO を未定義にするには $ unset FOO としなければならない。 つまり、シェルスクリプトで、「変数が空」であることと、「変数が未定義」であることは明確に違う。 一方、make においてはこのあたりが紛らわしいというか、非常にわかりにくいと思うので、整理しておきたい。 make には ifdef という構文があるが、これの挙動を見てみる。 (実験1) 以下の内容の Makefile を用意する。 FOO= all: ifdef @echo FOO is defined. else @echo FOO is NOT defined. endif 実行すると以下のようになる。 $ make FOO is NOT defined. FOO= のように、空文字を代入した場合、 ifdef
2017/07/19 リンク