ビルド(コンパイル)で「分離記号を欠いています」となる場合の対処
小粋空間 » Programming Language » ビルド(コンパイル)で「分離記号を欠いています」となる場合の対処
ビルド(コンパイル)で「分離記号を欠いています」となる場合の対処方法について紹介します。
1.問題点
ビルドしたところ、Makefileで「分離記号を欠いています.」というエラーが発生しました。
[root@hoge test]# make
makefile:1: *** 分離記号を欠いています. 中止.
ネットで検索すると、「Makefileのフォーマットで実行コマンドの先頭には半角スペースではなく、Tabを入力する必要がある」という情報が多く見つかりますが、実行コマンドの先頭にはTabを入力しています。
これはこれでノウハウになるのですが、肝心の原因が不明です。
ということで、ビルド(コンパイル)で「分離記号を欠いています」となる場合の対処方法について紹介します。
2.原因と対処
調べたところ、Makefileの文字コードがUTF-8でBOMありの場合でこのエラーが発生するようです。
UTF-8でBOMありの場合、ファイルの先頭に「バイトオーダーマーク (Byte Order Mark)」が入り、これがエラーの原因になってしまったようです。
ということで、Makefileの文字コードをBOMなしのUTF-8(UTF-8N)にすることで解消します。