tweeeetyのぶろぐ的めも

アウトプットが少なかったダメな自分をアウトプット<br>\(^o^)/

【make】makefileで`*** missing separator. Stop.`と怒られる

はじめに

すごく初歩的ですが...
make時に以下【make】makefile*** missing separator. Stop.と怒られる

はじめに

すごく初歩的ですが...
make時に以下のようなエラーが出ることがあって小一時間悩んだので自分用いましメモ

$ make
makefile:4: *** missing separator.  Stop.

なぜエラーか

makefileは以下のように記載しますが、

target: file
  command...

commandの前は
スペースではなく、かならずタブ で書く必要があります。

これをスペースで書いてしまったときにタイトルのようなエラーが出ます。

サンプル

  • makefile
    • hoge:の次の行の先頭はタブ
    • fuga:の次の行の先頭がスペース
$ cat makefile
hoge:
    @echo "say hoge"
fuga:
    echo "say fuga"
  • 実行
$ make
makefile:4: *** missing separator.  Stop.

捕捉

vimなどでちゃんとcolor schemeが効いて入ればすぐ気づけます

参考

おわり

これだけの行数サンプルだと即気づくんですが、
結構長いmakefileでcolor scheme無しで書いてたので 一部だけスペースなことに全然気づきませんでした... のようなエラーが出ることがあって小一時間悩んだので自分用いましメモ

$ make
makefile:4: *** missing separator.  Stop.

なぜエラーか

makefileは以下のように記載しますが、

target: file
  command...

commandの前は
スペースではなく、かならずタブ で書く必要があります。

サンプル

  • makefile
    • hoge:の次の行の先頭はタブ
    • fuga:の次の行の先頭がスペース
$ cat makefile
hoge:
    @echo "say hoge"
fuga:
    echo "say fuga"
  • 実行
$ make
makefile:4: *** missing separator.  Stop.

捕捉

vimなどでちゃんとcolor schemeが効いて入ればすぐ気づけます

f:id:tweeeety:20180608211325p:plain

参考

おわり

結構長いmakefileでcolor scheme無しで書いてたので
一部だけスペースなことに全然気づきませんでした...つらみ...\(^o^)/