Bug #241

Coreboot build fails when GRUB2 is selected as payload

Added by Naveen Chaudhary 7 months ago. Updated 7 months ago.

Status:NewStart date:10/27/2019
Priority:NormalDue date:10/29/2019
Assignee:-% Done:


Target version:-


Steps to reproduce

  1. Select any chipset
  2. Select GRUB2 as payload from menuconfig
  3. make

Output (complete logs attached)

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

coreboot_grub2_logs (13.6 KB) Naveen Chaudhary, 10/27/2019 03:03 PM

grub2_logs (73.4 KB) HCL technologies, 10/31/2019 02:06 PM


#1 Updated by HCL technologies 7 months ago

Firstly, make gives me an error while fetching gnulib as of today from grub2. So I tried replacing the link in bootstrap file of grub2 as:

And finally, after cloning the gnulib externally, we are good to go!

You are probably missing some dependency, this one(error in your logs) is probably because of automake dependency for gnulib as a payload or may be pkg-config dependency for grub2. You can check the "gnulib/DEPENDENCIES" file for gnulib pre-requisites and "grub2/INSTALL" file for grub2 requirements.

Please find attached the full logs for successful build of grub2 as a payload for qemu.
Provided below is the snippet of diff:

autoreconf: running: /usr/bin/autoheader --include=m4 --force
autoreconf: running: automake --add-missing --copy --force-missing
autoreconf: Leaving directory '.'
./bootstrap: cp -fp gnulib/build-aux/install-sh build-aux/install-sh
./bootstrap: cp -fp gnulib/build-aux/mdate-sh build-aux/mdate-sh
./bootstrap: cp -fp gnulib/build-aux/texinfo.tex build-aux/texinfo.tex
./bootstrap: cp -fp gnulib/build-aux/depcomp build-aux/depcomp
./bootstrap: cp -fp gnulib/build-aux/config.guess build-aux/config.guess
./bootstrap: cp -fp gnulib/build-aux/config.sub build-aux/config.sub
./bootstrap: Creating po/Makevars from po/Makevars.template ...
./bootstrap: done.  Now you can run './configure'.`

Do check once at your end after verifying the dependencies and let us know.

Also available in: Atom PDF