Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 550132

Summary: sys-boot/grub-0.97-r14 with ncurses[tinfo] - '/lib/libtinfo.so.5: error adding symbols: DSO missing from command line'
Product: Gentoo Linux Reporter: Judge Dredd <the.guard>
Component: [OLD] Core systemAssignee: Gentoo's Team for Core System packages <base-system>
Status: RESOLVED FIXED    
Severity: normal CC: bkohler, creideiki+gentoo-bugzilla, dev, dsavard, hpdeifel, mplichta, nbowler, the.guard
Priority: Normal    
Version: unspecified   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 457530    
Attachments: build.log

Description Judge Dredd 2015-05-22 08:15:01 UTC
Created attachment 403744 [details]
build.log

sys-boot/grub-0.97-r14 fails to build with
/usr/lib/gcc/i686-pc-linux-gnu/4.7.3/../../../../i686-pc-linux-gnu/bin/ld: asmstub.o: undefined reference to symbol 'cbreak'
/lib/libtinfo.so.5: error adding symbols: DSO missing from command line
Comment 1 Judge Dredd 2015-05-22 08:15:51 UTC
Portage 2.2.18 (python 3.3.5-final-0, default/linux/x86/13.0/desktop, gcc-4.7.3, glibc-2.20-r2, 3.18.12-gentoo i686)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.18.12-gentoo-i686-AMD_Athlon-tm-_64_Processor_3200+-with-gentoo-2.2
KiB Mem:     2586636 total,     78480 free
KiB Swap:     410620 total,    410196 free
Timestamp of repository gentoo: Sun, 17 May 2015 15:45:01 +0000
sh bash 4.2_p53
ld GNU ld (Gentoo 2.24 p1.4) 2.24
app-shells/bash:          4.2_p53::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.9-r1::gentoo, 3.2.5-r6::gentoo, 3.3.5-r1::gentoo, 3.4.1::gentoo
dev-util/cmake:           2.8.12.2-r1::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.13.11::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.12.6::gentoo, 1.13.4::gentoo
sys-devel/binutils:       2.24-r3::gentoo
sys-devel/gcc:            4.7.3-r1::gentoo, 4.8.4::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.18::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.ru.gentoo.org/gentoo-portage
    priority: -1000

ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=k8-sse3 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=k8-sse3 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -march=i686 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="http://gentoo.bloodhost.ru"
LANG="ru_RU.UTF-8"
LC_ALL=""
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="3dnow 3dnowext X a52 aac acl acpi alsa berkdb bluetooth branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emacs emboss encode exif fam ffmpeg firefox flac fortran gdbm gif glamor gpm gtk iconv ipv6 jpeg lcms ldap libnotify mad mmx mmxext mng modules mp3 mp4 mpeg ncurses nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds qt3support qt4 readline sdl session spell sse sse2 sse3 ssl startup-notification svg tcpd tiff truetype udev udisks unicode upower usb v4l vaapi vdpau vorbis wxwidgets x264 x86 xcb xml xv xvid zlib" ABI_X86="32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext 3dnow 3dnowext sse sse2 sse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" QEMU_SOFTMMU_TARGETS="i386 arm mips ppc x86_64" QEMU_USER_TARGETS="arm i386 mips ppc x86_64" RUBY_TARGETS="ruby19 ruby20" SANE_BACKENDS="pixma" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 2 Judge Dredd 2015-05-22 08:16:13 UTC
[ebuild     U ] sys-boot/grub-0.97-r14 [0.97-r12] USE="ncurses -custom-cflags -netboot -static"
Comment 3 Judge Dredd 2015-05-22 08:31:28 UTC
[ebuild   R   ] sys-libs/ncurses-5.9-r3  USE="cxx gpm tinfo unicode -ada -debug -doc -minimal -profile -static-libs -trace"
Comment 4 Karl-Johan Karlsson 2015-05-22 10:07:23 UTC
Does it work if you first rebuild ncurses with USE="-tinfo"?
Comment 5 Judge Dredd 2015-05-22 17:59:09 UTC
(In reply to Karl-Johan Karlsson from comment #4)
> Does it work if you first rebuild ncurses with USE="-tinfo"?

Yes.
Comment 6 Judge Dredd 2015-05-22 18:56:35 UTC
Interesting. Rebuilding ncurses with USE="-tinfo" fixed build breakage for other packages (pidgin, weechat, cone). I might make seperate issues for these packages later.
Comment 7 Ben Kohler gentoo-dev 2015-05-22 20:32:24 UTC
This tinfo flag on ncurses is known to break LOTS of builds, I'm surprised this hasn't been reported for grub yet.  It's already reported for pidging & weechat, but not cone (as far as I can tell).  See the tracker bug I just added a blocker for.
Comment 8 Michael Palimaka (kensington) gentoo-dev 2015-12-13 18:01:44 UTC
*** Bug 568106 has been marked as a duplicate of this bug. ***
Comment 9 Daniel Savard 2015-12-13 22:44:09 UTC
(In reply to Judge Dredd from comment #6)
> Interesting. Rebuilding ncurses with USE="-tinfo" fixed build breakage for
> other packages (pidgin, weechat, cone). I might make seperate issues for
> these packages later.

When building the ncurses package with USE="tinfo" the ncurses and terminfo libraries get separated into three libraries: libncurses.so, libtinfo.so and libtinfow.so. This flag is required by some packages, the CUDA development environment in my case. So, I cannot just rebuild the ncurses library with USE="-tinfo".

Suffice for developpers to include the two missing libraries when the USE="tinfo" is defined to make everything working just fine. Every package using the ncurses package is subject to this problem.

Maybe someone should spread the word to developpers rather than waiting for bug reports.

I posted a patch for grub-0.97-r16 for bug 568106, it should work with grub-0.97-r14 as well.
Comment 10 SpanKY gentoo-dev 2015-12-14 04:32:55 UTC
(In reply to Daniel Savard from comment #9)

that patch is incorrect as it breaks builds when USE=-tinfo.  the configure script should be changed to look up details via pkg-config files instead.
Comment 11 Daniel Savard 2015-12-15 03:29:58 UTC
(In reply to SpanKY from comment #10)
> (In reply to Daniel Savard from comment #9)
> 
> that patch is incorrect as it breaks builds when USE=-tinfo.  the configure
> script should be changed to look up details via pkg-config files instead.

Haven't you read the comment with the patch? That is exactly what I am saying. I never pretended this patch fixed everything. It fixes the case where you have compile ncurses with USE=tinfo. In this very case, it does the job. That was my comment.
Comment 12 SpanKY gentoo-dev 2015-12-15 04:51:28 UTC
(In reply to Daniel Savard from comment #11)

that isn't what your comment #9 said and what i was replying to
Comment 13 Daniel Savard 2015-12-16 02:23:28 UTC
(In reply to SpanKY from comment #12)
> (In reply to Daniel Savard from comment #11)
> 
> that isn't what your comment #9 said and what i was replying to

Well, the comment was also including a like to the original bug where the patch is posted. That is where it was specified.
Comment 14 SpanKY gentoo-dev 2015-12-16 20:19:40 UTC
*** Bug 568422 has been marked as a duplicate of this bug. ***
Comment 15 SpanKY gentoo-dev 2015-12-17 17:25:59 UTC
as noted on irc, using pkgconfig in DEPEND in bootloader ebuilds is fine
Comment 16 Ian Stakenvicius (RETIRED) gentoo-dev 2016-01-12 20:58:26 UTC
Please test sys-boot/grub-0.97-r17 if you have't already.
Comment 17 Ian Stakenvicius (RETIRED) gentoo-dev 2016-03-22 21:26:52 UTC
This is fixed in grub-0.97-r17
Comment 18 Ian Stakenvicius (RETIRED) gentoo-dev 2016-03-22 21:35:41 UTC
*** Bug 578022 has been marked as a duplicate of this bug. ***