gpt4 book ai didi

makefile - make file : yacc command not found and [y. tab.c] 安装 Bison 后出现错误 127

转载 作者:行者123 更新时间:2023-12-04 19:33:25 24 4
gpt4 key购买 nike

Toni Guttman 有一个给定的 r-tree 代码(它已为我的家庭作业进行了修改),但是,如果我更改参数(节点的维度),那么“make”将导致此类错误:

yacc y.spec
make: yacc:command not found
make: *** [y.tab.c] error 127

我已经安装了 bison 和 flex,“which yacc”显示了
alias yacc='bison'
/usr/bin/bison

我应该怎么做才能解决问题?

这是“生成文件”:
# %W% %G%
# use flag -O for optimized code, slower compile
FLAGS=

SRC= main.c index.c newtid.c node.c rectangle.c \
printstats.c clock.c y.spec allocate.c error.c\
split.l.c \
split.q.c \
split.e.c

HEADERS= options.h macros.h index.h assert.h

ALL= $(SRC) $(HEADERS) split.l.h split.q.h split.e.h

OBJ= main.o index.o newtid.o node.o rectangle.o \
printstats.o clock.o y.tab.o allocate.o error.o

OBJLIN= split.l.o
OBJQ= split.q.o
OBJEXP= split.e.o

$(OBJ): $(HEADERS)
$(OBJLIN): $(HEADERS) split.l.h
$(OBJQ): $(HEADERS) split.q.h
$(OBJEXP): $(HEADERS) split.e.h

# assembler chokes if graphics.c is compiled with -g option, do it without.
# graphics.o: graphics.c $(HEADERS)
# cc -c graphics.c

# assembler chokes if y.tab.c is compiled with -g option, do it without.
# y.tab.o: y.tab.c $(HEADERS)
# cc -c y.tab.c

.c.o: $(HEADERS)
cc -c $(FLAGS) $*.c

linear: $(OBJ) $(OBJLIN)
cc $(FLAGS) $(OBJ) $(OBJLIN) -lm -o linear

quad: $(OBJ) $(OBJQ)
cc $(FLAGS) $(OBJ) $(OBJQ) -lm -o quad

exp: $(OBJ) $(OBJEXP)
cc $(FLAGS) $(OBJ) $(OBJEXP) -lm -o exp

y.tab.c: y.spec $(HEADERS)
yacc y.spec

edit:
sccs edit $(SRC) $(HEADERS) split.l.h split.q.h split.o.h

unedit:
sccs unedit $(ALL)
rm -f tags

delta:
sccs delta $(ALL)
rm -f tags

get:
sccs get $(ALL)

clean:
rm -f *.o core y.tab.c tags

tags: $(SRC)
ctags *.c

lint:
rm -f lint.out
lint *.c > lint.out

最佳答案

你没有 yacc如您所见,已安装。在你的 shell 中改变一个别名不会有帮助,因为它试图运行 yacc命令,而不是外壳。您必须编辑您的 makefile,并添加如下行:

YACC = bison -y

( -y 标志使 Bison 表现得像 yacc)

由于您没有显示您的实际生成文件,我们无法确定这是否会这样做,但很有可能。

编辑:

我上面的makefile,把引用改成 yaccbison -y反而。

您的 makefile 没有遵循许多最佳实践,但那是另一天的事了。

关于makefile - make file : yacc command not found and [y. tab.c] 安装 Bison 后出现错误 127,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16420756/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com