Using the latest stage3 of uclibc hardened, it's impossible to emerge efibootmgr as it complains of undefined references. One way to work around it is to use LDFLAGS=-lintl. To reproduce: 1. emerge efibootmgr Dump: x86_64-gentoo-linux-uclibc-gcc -O2 -pipe -I/var/tmp/portage/sys-boot/efibootmgr-15/work/efibootmgr-15/src/include -Wall -Wextra -Wsign-compare -Wstrict-aliasing -std=gnu11 -fPIC -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -DLOCALEDIR=\"/usr/share/locale/\" -DEFIBOOTMGR_VERSION="\"15\"" -DDEFAULT_LOADER=\"\\\\EFI\\\\Gentoo\\\\grub.efi\" -I/usr/include/efivar -Wl,-O1 -Wl,--as-needed -fno-merge-constants -Wl,--fatal-warnings,--no-allow-shlib-undefined -Wl,-O2 -Wl,--no-undefined-version -o efibootdump efibootdump.o unparse_path.o -lefivar -lefiboot -lpopt efibootdump.o: In function `main': efibootdump.c:(.text.startup+0x9d): undefined reference to `libintl_bindtextdomain' efibootdump.c:(.text.startup+0xa9): undefined reference to `libintl_textdomain' efibootdump.c:(.text.startup+0x10c): undefined reference to `libintl_gettext' efibootdump.c:(.text.startup+0x15a): undefined reference to `libintl_gettext' efibootdump.c:(.text.startup+0x1b2): undefined reference to `libintl_gettext' efibootdump.c:(.text.startup+0x74b): undefined reference to `libintl_gettext' collect2: error: ld returned 1 exit status make[1]: *** [/var/tmp/portage/sys-boot/efibootmgr-15/work/efibootmgr-15/Make.rules:21: efibootdump] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory '/var/tmp/portage/sys-boot/efibootmgr-15/work/efibootmgr-15/src' make: *** [Makefile:10: all] Error 2 * ERROR: sys-boot/efibootmgr-15::gentoo failed (compile phase): * emake failed
Please supply a patch to the upstream developer.