Makefile grub#u script.yy.c:2354:13:error:';yy#u致命错误';已定义但未使用

Makefile grub#u script.yy.c:2354:13:error:';yy#u致命错误';已定义但未使用,makefile,bison,flex-lexer,grub,gnu-make,Makefile,Bison,Flex Lexer,Grub,Gnu Make,在构建最新的grub2(2.00)时,我遇到了这个错误 我尝试将-Wno unused function添加到Makefile中的HOST\u CFLAGS、HOST\u CPPFLAGS、TARGET\u CPPFLAGS和TARGET\u CFLAGS。我甚至尝试在运行make时删除该函数 不幸的是,错误仍然存在。您看到了吗 最新的flex使GRUB-2.00构建失败。我可以使用--disable werror解决问题,但是grub core/script/yylex.l会导致两个警告,它们

在构建最新的grub2(2.00)时,我遇到了这个错误

我尝试将
-Wno unused function
添加到
Makefile
中的
HOST\u CFLAGS
HOST\u CPPFLAGS
TARGET\u CPPFLAGS
TARGET\u CFLAGS
。我甚至尝试在运行
make
时删除该函数

不幸的是,错误仍然存在。

您看到了吗

最新的
flex
使
GRUB-2.00
构建失败。我可以使用
--disable werror
解决问题,但是
grub core/script/yylex.l
会导致两个警告,它们与-werror不兼容

/grub-core/script/yylex.l:在顶层:
grub_script.yy.c:2351:13:错误:“yy_致命错误”已定义但未使用

这可以通过删除
yylex.l
中的
#define YY_FATAL_ERROR(msg)
来解决

然而,据《华盛顿邮报》报道,这一问题似乎已经得到解决


根据网上的信息判断,您要么想切换到
grub 2.02
,要么尝试较旧版本的
flex

请列出flex、bison、automake、autoconf的版本。Ubuntu13.10 liveusb chrooting进入一个14.04分区(全部为amd64),其中包含freetype-2.5.3、bison-3.0、grub-2.00、libfreetype6_2.5.2-1、flex-2.5.39、libfreetype6-dev_2.5.2-1和m4-1.4.17。谢谢,我想这是我的承诺(从邮件列表中):