I am able to successfully build with SeaBIOS as payload and also able to boot it on MinnowBoard Max. But when I change the payload to GRUB2, it fails with the following build error :
Copying file m4/time_h.m4 Copying file m4/unistd-safer.m4 Copying file m4/unistd_h.m4 Copying file m4/vasnprintf.m4 Copying file m4/vsnprintf.m4 Copying file m4/warn-on-use.m4 Copying file m4/wchar_h.m4 Replacing file m4/wchar_t.m4 (non-gnulib code backed up in m4/wchar_t.m4~) !! Copying file m4/wcrtomb.m4 Copying file m4/wctype_h.m4 Copying file m4/wcwidth.m4 Replacing file m4/wint_t.m4 (non-gnulib code backed up in m4/wint_t.m4~) !! Replacing file m4/xsize.m4 (non-gnulib code backed up in m4/xsize.m4~) !! Creating grub-core/lib/gnulib/Makefile.am Creating m4/gnulib-cache.m4 Creating m4/gnulib-comp.m4 Finished.
You may need to add #include directives for the following .h files. #include <fnmatch.h> #include <regex.h> #include <stdio.h> #include <stdlib.h> #include "argp.h" #include "error.h" #include "gettext.h" #include "mbswidth.h" #include "progname.h" #include "save-cwd.h"
You may need to use the following Makefile variables when linking. Use them in <program>_LDADD when linking a program, or in <library>_a_LDFLAGS or <library>_la_LDFLAGS when linking a library. $(LTLIBINTL) when linking with libtool, $(LIBINTL) otherwise $(LTLIBTHREAD) when linking with libtool, $(LIBTHREAD) otherwise
Don't forget to - add "grub-core/lib/gnulib/Makefile" to AC_CONFIG_FILES in ./configure.ac, - mention "gnulib" in SUBDIRS in grub-core/lib/Makefile.am, - mention "-I m4" in ACLOCAL_AMFLAGS in Makefile.am, - mention "m4/gnulib-cache.m4" in EXTRA_DIST in Makefile.am, - invoke gl_EARLY in ./configure.ac, right after AC_PROG_CC, - invoke gl_INIT in ./configure.ac. patching file argp-parse.c patching file argp-fmtstream.c patching file argp-help.c patching file mbswidth.c patching file mbswidth.h patching file regcomp.c Importing unicode... Importing libgcrypt... Generating Automake input... Saving timestamps... running: AUTOPOINT=true LIBTOOLIZE=true autoreconf --verbose --install --force -I m4 --no-recursive autoreconf: Entering directory `.' autoreconf: running: true --force autoreconf: running: aclocal -I m4 --force -I m4 autoreconf: configure.ac: tracing autoreconf: configure.ac: not using Libtool autoreconf: running: /usr/bin/autoconf --include=m4 --force configure.ac:414: error: possibly undefined macro: AC_CHECK_HEADERS If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure.ac:505: error: possibly undefined macro: AC_LINK_IFELSE configure.ac:1550: error: possibly undefined macro: AC_LANG_CALL autoreconf: /usr/bin/autoconf failed with exit status: 1 ./bootstrap: autoreconf failed Importing unicode... Importing libgcrypt... WARNING: grub-core/lib/libgcrypt-grub already exists WARNING: grub-core/lib/libgcrypt-grub/cipher already exists WARNING: grub-core/lib/libgcrypt-grub/mpi already exists WARNING: grub-core/lib/libgcrypt-grub/src already exists Generating Automake input... Saving timestamps... Running autoreconf... autoreconf: Entering directory `.' autoreconf: running: autopoint --force Copying file build-aux/config.rpath Copying file m4/extern-inline.m4 autoreconf: running: aclocal --force -I m4 autoreconf: configure.ac: tracing autoreconf: configure.ac: not using Libtool autoreconf: running: /usr/bin/autoconf --force configure.ac:414: error: possibly undefined macro: AC_CHECK_HEADERS If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure.ac:505: error: possibly undefined macro: AC_LINK_IFELSE configure.ac:1550: error: possibly undefined macro: AC_LANG_CALL autoreconf: /usr/bin/autoconf failed with exit status: 1 Makefile:28: recipe for target 'grub2/build/config.h' failed make[1]: *** [grub2/build/config.h] Error 1 payloads/external/Makefile.inc:171: recipe for target 'grub2' failed make: *** [grub2] Error 2
Has anyone seen this error? I tried searching on google and few related but different posts suggested that it maybe related to incorrect automake files/headers being picked up, but I couldn't make it working. While I am still searching on it, has anyone seen and fixed this earlier before?
On Sun, 13 Oct 2019 17:17:23 +0000 Naveen Chaudhary NaveenChaudhary2010@hotmail.com wrote:
...
Has anyone seen this error? I tried searching on google and few related but different posts suggested that it maybe related to incorrect automake files/headers being picked up, but I couldn't make it working. While I am still searching on it, has anyone seen and fixed this earlier before?
You're probably missing the pkg-config package, as suggested by: https://stackoverflow.com/questions/8811381/possibly-undefined-macro-ac-msg-...
For reference, when building GRUB2 I had to additionally install the following packages (on Debian):
autoconf automake gettext autopoint pkg-config grub-common libfreetype6-dev unifont
Regards,
Merlin
Can someone please help here?
Regards, Naveen ________________________________ From: Naveen Chaudhary Sent: Sunday, October 13, 2019 10:47 PM To: coreboot@coreboot.org coreboot@coreboot.org Subject: GRUB2 payload build error
I am able to successfully build with SeaBIOS as payload and also able to boot it on MinnowBoard Max. But when I change the payload to GRUB2, it fails with the following build error :
Copying file m4/time_h.m4 Copying file m4/unistd-safer.m4 Copying file m4/unistd_h.m4 Copying file m4/vasnprintf.m4 Copying file m4/vsnprintf.m4 Copying file m4/warn-on-use.m4 Copying file m4/wchar_h.m4 Replacing file m4/wchar_t.m4 (non-gnulib code backed up in m4/wchar_t.m4~) !! Copying file m4/wcrtomb.m4 Copying file m4/wctype_h.m4 Copying file m4/wcwidth.m4 Replacing file m4/wint_t.m4 (non-gnulib code backed up in m4/wint_t.m4~) !! Replacing file m4/xsize.m4 (non-gnulib code backed up in m4/xsize.m4~) !! Creating grub-core/lib/gnulib/Makefile.am Creating m4/gnulib-cache.m4 Creating m4/gnulib-comp.m4 Finished.
You may need to add #include directives for the following .h files. #include <fnmatch.h> #include <regex.h> #include <stdio.h> #include <stdlib.h> #include "argp.h" #include "error.h" #include "gettext.h" #include "mbswidth.h" #include "progname.h" #include "save-cwd.h"
You may need to use the following Makefile variables when linking. Use them in <program>_LDADD when linking a program, or in <library>_a_LDFLAGS or <library>_la_LDFLAGS when linking a library. $(LTLIBINTL) when linking with libtool, $(LIBINTL) otherwise $(LTLIBTHREAD) when linking with libtool, $(LIBTHREAD) otherwise
Don't forget to - add "grub-core/lib/gnulib/Makefile" to AC_CONFIG_FILES in ./configure.ac, - mention "gnulib" in SUBDIRS in grub-core/lib/Makefile.am, - mention "-I m4" in ACLOCAL_AMFLAGS in Makefile.am, - mention "m4/gnulib-cache.m4" in EXTRA_DIST in Makefile.am, - invoke gl_EARLY in ./configure.ac, right after AC_PROG_CC, - invoke gl_INIT in ./configure.ac. patching file argp-parse.c patching file argp-fmtstream.c patching file argp-help.c patching file mbswidth.c patching file mbswidth.h patching file regcomp.c Importing unicode... Importing libgcrypt... Generating Automake input... Saving timestamps... running: AUTOPOINT=true LIBTOOLIZE=true autoreconf --verbose --install --force -I m4 --no-recursive autoreconf: Entering directory `.' autoreconf: running: true --force autoreconf: running: aclocal -I m4 --force -I m4 autoreconf: configure.ac: tracing autoreconf: configure.ac: not using Libtool autoreconf: running: /usr/bin/autoconf --include=m4 --force configure.ac:414: error: possibly undefined macro: AC_CHECK_HEADERS If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure.ac:505: error: possibly undefined macro: AC_LINK_IFELSE configure.ac:1550: error: possibly undefined macro: AC_LANG_CALL autoreconf: /usr/bin/autoconf failed with exit status: 1 ./bootstrap: autoreconf failed Importing unicode... Importing libgcrypt... WARNING: grub-core/lib/libgcrypt-grub already exists WARNING: grub-core/lib/libgcrypt-grub/cipher already exists WARNING: grub-core/lib/libgcrypt-grub/mpi already exists WARNING: grub-core/lib/libgcrypt-grub/src already exists Generating Automake input... Saving timestamps... Running autoreconf... autoreconf: Entering directory `.' autoreconf: running: autopoint --force Copying file build-aux/config.rpath Copying file m4/extern-inline.m4 autoreconf: running: aclocal --force -I m4 autoreconf: configure.ac: tracing autoreconf: configure.ac: not using Libtool autoreconf: running: /usr/bin/autoconf --force configure.ac:414: error: possibly undefined macro: AC_CHECK_HEADERS If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure.ac:505: error: possibly undefined macro: AC_LINK_IFELSE configure.ac:1550: error: possibly undefined macro: AC_LANG_CALL autoreconf: /usr/bin/autoconf failed with exit status: 1 Makefile:28: recipe for target 'grub2/build/config.h' failed make[1]: *** [grub2/build/config.h] Error 1 payloads/external/Makefile.inc:171: recipe for target 'grub2' failed make: *** [grub2] Error 2
Has anyone seen this error? I tried searching on google and few related but different posts suggested that it maybe related to incorrect automake files/headers being picked up, but I couldn't make it working. While I am still searching on it, has anyone seen and fixed this earlier before?