我在cygwin中运行了这个makefile,我得到了一些错误,这是makefile:
FFLAGS=
BFLAGS=-d -v -y
CFLAGS=-g -Wall -Wextra -std=c++11 -Wno-write-strings -I /usr/local/boost_1_50_0
FLEX=flex
BISON=bison
CC=g++
SRCS=y.tab.c ast.cpp tokentable.cpp symboltable.cpp main.cpp lex.yy.c semanticanalyzer.cpp astnodevisitor.cpp constants.cpp astnodetypechecker.cpp utility.cpp astnodecodegenerator.cpp
OBJS=y.tab.o ast.o tokentable.o symboltable.o main.o lex.yy.o semanticanalyzer.o astnodevisitor.o constants.o astnodetypechecker.o utility.o astnodecodegenerator.o
cooc : ${OBJS}
${CC} ${CFLAGS} -o $@ ${OBJS}
%.o : %.cpp
${CC} ${CFLAGS} -c $<
y.tab.c : cool.y
${BISON} ${BFLAGS} cool.y
lex.yy.c : cool.flex
${FLEX} ${FFLAGS} cool.flex
.depend: ${SRCS}
rm -f ./.depend
${CC} ${CFLAGS} -MM $^>>./.depend
include .depend
我得到了这个错误:
MAKE Version 5.0版权所有(c)1987,1997 Borland International 错误makefile 25:期望冒号 错误makefile 26:命令语法错误 错误makefile 27:命令语法错误 错误makefile 29:命令语法错误 制作期间 * 4错误
答案 0 :(得分:0)
这是一个GNU make makefile。您正在运行Windows nmake
。这两个程序不兼容。如果你正在使用cygwin,请为cygwin安装GNU make程序并使用它。