Makefile ***缺少分隔符。停止制作文件

Makefile ***缺少分隔符。停止制作文件,makefile,Makefile,我得到了这个错误: make:24: *** missing separator. Stop. 虽然我在第24行用制表符更改了所有空格字符 第24行:arm_v5t_le-gcc$文件$包括$LIBS-o$目标 代码如下: #DM_serial2_make export PATH="$PATH:/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin:/opt/mv_pro_5.0/montavista/pro/bin:/opt/mv_

我得到了这个错误:

   make:24: *** missing separator.  Stop.
虽然我在第24行用制表符更改了所有空格字符

第24行:arm_v5t_le-gcc$文件$包括$LIBS-o$目标

代码如下:

#DM_serial2_make

export PATH="$PATH:/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin:/opt/mv_pro_5.0/montavista/pro/bin:/opt/mv_pro_5.0/montavista/common/bin" 
TARGET="/home/cilem/Desktop/06.05.2012/DM_serial2"

INCLUDES="  -I /home/cilem/Desktop/06.05.2012/libxml2 \
        -I /home/cilem/Desktop/06.05.2012/gstreamer-0.10  \
                -I /home/cilem/Desktop/06.05.2012/gstreamer-0.10/gst/interfaces \
                -I /home/cilem/Desktop/06.05.2012/glib-2.0 \
                -I /home/cilem/Desktop/06.05.2012/glib-2.0/include"

LIBS="  -L /home/cilem/Desktop/06.05.2012/lib/ -l:libgstreamer-0.10.so.0 \
    -L /home/cilem/Desktop/06.05.2012/lib/ -l:libgstinterfaces-0.10.so.0 \
    -L /home/cilem/Desktop/06.05.2012/lib/ -l:libgobject-2.0.so.0 \
    -L /home/cilem/Desktop/06.05.2012/lib/ -l:libgmodule-2.0.so.0 \
    -L /home/cilem/Desktop/06.05.2012/lib/ -l:libxml2.so.2 \
    -L /home/cilem/Desktop/06.05.2012/lib/ -l:libgthread-2.0.so.0 \
    -L /home/cilem/Desktop/06.05.2012/lib/ -l:libglib-2.0.so.0"


FILES="DM_serial2.c"

arm_v5t_le-gcc $FILES $INCLUDES $LIBS -o $TARGET

我认为最后一行应该替换为:

$TARGET: $FILES $INCLUDES $LIBS
    arm_v5t_le-gcc $FILES $INCLUDES $LIBS -o $TARGET

上面的一行(以arm_v5t_le-gcc开头)应该以一个制表符开头,而不是空格。

看起来像一个shell脚本。Shell脚本不是makefile,反之亦然。您需要找到一个关于make的好教程,或者阅读gnumake手册

例如,变量值中不应该有任何引号

其次,make中的变量扩展要求变量被括号或大括号包围:
$(FILES)
${FILES}

第三,正如piokuc所说,这条线不是有效的make规则。制定规则的形式如下:

<target> : <dependencies...>
        <commands...>
你这里还有其他奇怪的东西。您不需要在同一个目录中反复提供
-L
标志。一次就够了。而且我不熟悉
-l:libfoo.a
结构;通常是
-lfoo

$(TARGET): $(FILES)
        arm_v5t_le-gcc $(FILES) $(INCLUDES) $(LIBS) -o $(TARGET)