Makefile中的Shell命令导致错误

时间:2015-11-02 10:23:19

标签: makefile

我正在使用Makefile来加速我的Python项目的开发。在某种程度上,我使用pep8实用程序使用命令pep8 <filename>对源代码执行样式检查。

我将所有源文件放在同一个子目录中,名为evientclassifier。我在Makefile中添加了以下规则:

style:
    for py_file in evientclassifier/*.py; do
        pep8 $py_file
    done

但是,当我运行make style时,我收到以下错误:

Makefile:15: *** missing separator.  Stop.

我不确定这里发生了什么,因为shell命令在语法上是正确的。

有没有正确/更好的方法呢?

1 个答案:

答案 0 :(得分:0)

  1. Shell命令必须是一行
  2. $必须转义
  3. style必须声明为.PHONY,否则make会将style视为文件名
  4. 这就是我要解决的问题:

    .PHONY: style
    style:
            for py_file in *.py; do pep8 $$file; done