media-sound/mp3blaster-3.2.5-r1 fails to compile against sys-libs/ncurses-5.9-r5[tinfo] since it references the LINES symbol but doesn't link against libtinfo. x86_64-pc-linux-gnu-g++ -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -march= amdfam10 -O2 -ggdb -pipe -Wl,--as-needed -L../mpegsound -L../nmixer -o nmixer m ain.o -lncurses -lnmixer -lpthread -lm -lpthread /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/../../../../x86_64-pc-linux-gnu/bin/ld: m ain.o: undefined reference to symbol 'LINES' /lib64/libtinfo.so.5: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status Makefile:260: recipe for target 'nmixer' failed make[2]: *** [nmixer] Error 1 make[2]: Leaving directory '/var/tmp/portage/media-sound/mp3blaster-3.2.5-r1/work/mp3blaster-3.2.5/nmixer' Makefile:297: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/var/tmp/portage/media-sound/mp3blaster-3.2.5-r1/work/mp3blaster-3.2.5' Makefile:191: recipe for target 'all' failed make: *** [all] Error 2 * ERROR: media-sound/mp3blaster-3.2.5-r1::gentoo failed (compile phase): * emake failed
Temporary workaround: create /etc/portage/env/media-sound/mp3blaster-3.2.5-r1 containing this code: post_src_prepare() { cd "${S}" sed -i 's/-lncurses/-lncurses -ltinfo/g' configure } Of course, this would fail if ncurses isn't built with the tinfo flag, so the ebuild will likely need a better solution. But it confirmed for me that adding that library will let me compile things successfully.
commit fb8965e575b33b5e57bb06e55937222ac6f024cd Author: David Seifert <soap@gentoo.org> Date: Sat Jan 7 14:05:52 2017 +0200 media-sound/mp3blaster: Fix C++ and build system Gentoo-bug: 422791, 559210, 600158 * EAPI=6 * Add -Wnarrowing patch * Fix ncurses[tinfo] underlinking * Fix hard-coded ar