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

Bug 683738

Summary: media-sound/sooperlooper with sys-libs/ncurses[tinfo] - ld: slconsole.o: undefined reference to symbol 'curs_set'
Product: Gentoo Linux Reporter: Mārtiņš Mačs <macs.martins>
Component: Current packagesAssignee: Gentoo Sound Team <sound>
Status: RESOLVED FIXED    
Severity: normal CC: esigra, mgorny
Priority: Normal Keywords: PATCH
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 457530    
Attachments: Fix build with sys-libs/ncurses[tinfo]
sooperlooper-1.7.3-tinfo.patch

Description Mārtiņš Mačs 2019-04-18 10:58:30 UTC
media-sound/sooperlooper fails to build with sys-libs/ncurses[tinfo]


x86_64-pc-linux-gnu-g++ -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include   -I/usr/include/libxml2   -march=native -O2  -I/data/portage_tmp/portage/media-sound/sooperlooper-1.7.3-r2/work/sooperlooper-1.7.3/libs/pbd -I/data/portage_tmp/portage/media-sound/sooperlooper-1.7.3-r2/work/sooperlooper-1.7.3/libs/midi++  -Wl,-O1 -Wl,--as-needed -Wl,--no-keep-memory -o slconsole slconsole.o -llo -lpthread -lncurses -lpthread /data/portage_tmp/portage/media-sound/sooperlooper-1.7.3-r2/work/sooperlooper-1.7.3/libs/midi++/libmidipp.a /data/portage_tmp/portage/media-sound/sooperlooper-1.7.3-r2/work/sooperlooper-1.7.3/libs/pbd/libpbd.a
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: slconsole.o: undefined reference to symbol 'curs_set'
/lib64/libtinfo.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:562: slconsole] Error 1


After editing Makefile in the workdir and adding -ltinfo, compilation finishes successfully.

Related commits in upstream:
https://github.com/essej/sooperlooper/commit/50942f022d28c56167dc0094392b0d0485780617
https://github.com/essej/sooperlooper/commit/f00442b8d618cfcebfb9379159d9d7d3ef23d756
Comment 1 Mārtiņš Mačs 2019-04-18 11:10:32 UTC
Additionally, media-sound/sooperlooper does not have RDEPEND/DEPEND on sys-libs/ncurses.
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2019-04-18 11:46:58 UTC
(In reply to Mārtiņš Mačs from comment #0)
> Related commits in upstream:
> https://github.com/essej/sooperlooper/commit/
> 50942f022d28c56167dc0094392b0d0485780617
> https://github.com/essej/sooperlooper/commit/
> f00442b8d618cfcebfb9379159d9d7d3ef23d756

The combination of the two looks good.
Comment 3 Mārtiņš Mačs 2019-04-19 12:55:10 UTC
Created attachment 573448 [details, diff]
Fix build with sys-libs/ncurses[tinfo]

Merged two upstream commits into single patch file.
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2019-04-26 11:05:41 UTC
Created attachment 574180 [details, diff]
sooperlooper-1.7.3-tinfo.patch

A different approach that uses pkg-config and only defaults to AC_CHECK_LIB when that fails.
Comment 5 David Seifert gentoo-dev 2019-04-26 11:10:49 UTC
(In reply to Jeroen Roovers from comment #4)
> Created attachment 574180 [details, diff] [details, diff]
> sooperlooper-1.7.3-tinfo.patch
> 
> A different approach that uses pkg-config and only defaults to AC_CHECK_LIB
> when that fails.

This is the only correct solution, as anything but pkg-config will not scale. Personally, I would remove the subsequent AC_CHECK_LIB check too, because it adds no value really anymore.
Comment 6 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-06-20 08:12:38 UTC
Ping.
Comment 7 Larry the Git Cow gentoo-dev 2019-07-15 11:12:20 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b344adb823c331166e60d7b7297834ca71157a9

commit 9b344adb823c331166e60d7b7297834ca71157a9
Author:     Lars Wendler <polynomial-c@gentoo.org>
AuthorDate: 2019-07-15 11:11:53 +0000
Commit:     Lars Wendler <polynomial-c@gentoo.org>
CommitDate: 2019-07-15 11:12:14 +0000

    media-sound/sooperlooper: Fixed build with sys-libs/ncurses[tinfo]
    
    Thanks-to: Jeroen Roovers <jer@gentoo.org>
    Closes: https://bugs.gentoo.org/683738
    Package-Manager: Portage-2.3.69, Repoman-2.3.16
    Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>

 .../files/sooperlooper-1.7.3-tinfo.patch           | 22 ++++++++++++++++++++++
 .../sooperlooper/sooperlooper-1.7.3-r2.ebuild      |  3 ++-
 2 files changed, 24 insertions(+), 1 deletion(-)