我想知道如何正确编译带有调用 yyparse 的 Makefile 的程序?
这就是我所做的:
我有一个编译所有常规文件的 Makefile,它们与 y.tab.c 或 lex.yy.c 没有连接(我应该拥有它们吗?)
我在我的代码之上执行此操作:
#include "y.tab.c"
#include "lex.yy.c"
#include "y.tab.h"
这是我尝试制作程序时发生的情况:
当我只输入“make”时,它给了我很多警告。一些示例如下所示。
在函数yywrap':
/src/parser.y:12: multiple definition of
yywrap' server.o :/src/parser.y:12: 这里首先定义 utils.o:
在函数yyparse':
/src/y.tab.c:1175: multiple definition of
yyparse' server.o:/src/y.tab.c:1175: 这里首先定义 utils.o
我收到许多不同的错误,涉及不同的 yy_*** 文件。我过去通过多次调用 yyparse 成功编译,但这次似乎有所不同。这似乎很像某个地方的包含问题,但我不知道它是什么。我所有的头文件也有 ifndef 条件。
谢谢你的帮助!