Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 511128 - games-strategy/freeciv-2.4.2[readline]: fails to link (missing -lreadline)
Summary: games-strategy/freeciv-2.4.2[readline]: fails to link (missing -lreadline)
Status: VERIFIED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Games
URL: https://gna.org/bugs/index.php?22076
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-05-23 17:45 UTC by Tolga Dalman
Modified: 2014-05-28 14:15 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,805.10 KB, text/plain)
2014-05-23 22:56 UTC, Andrei Slavoiu
Details
freeciv-2.4.2-as-needed.patch (freeciv-2.4.2-as-needed.patch,322 bytes, patch)
2014-05-24 00:10 UTC, Andrei Slavoiu
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Tolga Dalman 2014-05-23 17:45:49 UTC
Here's the error message:

/var/tmp/portage/games-strategy/freeciv-2.4.2/work/freeciv-2.4.2/manual/.libs/freeciv-manual: symbol lookup error: /var/tmp/portage/games-strategy/freeciv-2.4.2/work/freeciv-2.4.2/server/.libs/libfreeciv-srv.so.0: undefined symbol: rl_attempted_completion_function

compiling with USE=-readline works perfectly.
Comment 1 Julian Ospald 2014-05-23 17:50:16 UTC
not enough information here, check the instructions when opening a bug
Comment 2 Tolga Dalman 2014-05-23 17:51:50 UTC
Feel free to close as invalid.
Comment 3 Julian Ospald 2014-05-23 17:55:36 UTC
(In reply to Tolga Dalman from comment #2)
> Feel free to close as invalid.

Why?
Comment 4 Andrei Slavoiu 2014-05-23 22:56:18 UTC
Created attachment 377536 [details]
build.log

Portage 2.2.10 (default/linux/amd64/13.0/desktop/kde, gcc-4.8.2, glibc-2.19, 3.14.4-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.14.4-gentoo-x86_64-AMD_A10-7850K_APU_with_Radeon-TM-_R7_Graphics-with-gentoo-2.2
KiB Mem:    30756772 total,  22523516 free
KiB Swap:   66803708 total,  66803708 free
Timestamp of tree: Fri, 23 May 2014 18:15:01 +0000
ld GNU gold (GNU Binutils 2.24) 1.11
app-shells/bash:          4.2_p47
dev-lang/python:          2.7.6-r1, 3.3.5, 3.4.0
dev-util/cmake:           2.8.12.2-r1
dev-util/pkgconfig:       0.28-r1
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.12.4
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.11.6, 1.14.1
sys-devel/binutils:       2.24-r2
sys-devel/gcc:            4.8.2
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2-r1
sys-devel/make:           4.0-r1
sys-kernel/linux-headers: 3.14 (virtual/os-headers)
sys-libs/glibc:           2.19
Repositories: gentoo gamerlay x-portage
Installed sets: @games
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -ggdb -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -ggdb -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildpkg candy cgroup clean-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news nostrip parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ftp.romnet.org/gentoo/ http://distfiles.gentoo.org"
LANG="ro_RO.utf8"
LC_ALL="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j7 -l8"
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"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/gamerlay /usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X a52 aac aacplus aalib accessibility acl acpi alsa amd64 amr analitza autoipd avahi avx berkdb branding bzip2 cairo caps cdda cdr clang cli client cmake consolekit cracklib crypt curl cxx dbus declarative doc dos dot dri dts dvd dvdr egl emboss encode exif fam fbcondecor ffmpeg firefox flac fma fma3 fma4 fortran gbm gcrypt gd gdbm gif gles1 gles2 gmp gnutls gold gpg gpm http iconv icu idn ipv6 jadetex jpeg jpeg2k kde kdenlive kdepim kipi lcms libcaca libnotify llvm-shared-libs lm_sensors lzma mad mdnsresponder-compat melt metalink midi mikmod mmx mmxext mng mod modules mp3 mp4 mpeg mtp multilib multimedia ncurses nettle network networkmanager nls nptl ntp offensive ogg openal opencl opengl openmp openssl openvg opus pam pango pch pcntl pcre pdf phonon plasma png policykit ppds qt3support qt4 r600-llvm-compiler readline rtmp samba schroedinger sdk sdl semantic-desktop session sndfile sound speex spell spice sqlite sse sse2 sse3 sse4 sse4_1 sse4_2 ssl ssse3 startup-notification svg symlink systemtap tcpd textures theora threads tiff timidity truetype udev udisks unicode upower usb valgrind vdpau videos voice vorbis vpx webkit webp x264 xattr xcb xcomposite xinerama xml xrandr xv xvfb xvid zeroconf zip zlib" ABI_X86="64 32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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" 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" GRUB_PLATFORMS="efi-64" 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" LINGUAS="ro en eo" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="arm i386 x86_64" QEMU_USER_TARGETS="arm armeb i386 x86_64" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="radeon radeonsi modesetting" 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, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

=================================================================
                        Package Settings
=================================================================

games-strategy/freeciv-2.3.4 was built with the following:
USE="ipv6 nls readline sdl sound -auth -dedicated -ggz -gtk"
LDFLAGS="-Wl,-O1,--as-needed,--sort-common"
Comment 5 Andrei Slavoiu 2014-05-24 00:10:08 UTC
Created attachment 377544 [details, diff]
freeciv-2.4.2-as-needed.patch

The problem seems to be cause by --as-needed link flag, since libfreeciv-srv.so is the only one using the symbol the readline library is not linked to either the server or manual executable. Adding $(SERVER_LIBS) to libfreeciv_srv_la_LIBADD fixes this.
Comment 6 Julian Ospald 2014-05-24 15:10:29 UTC
seems to be reproducible with ld.gold
Comment 7 Julian Ospald 2014-05-24 15:16:56 UTC
+  24 May 2014; Julian Ospald <hasufell@gentoo.org> freeciv-2.4.2.ebuild,
+  +files/freeciv-2.4.2-as-needed.patch:
+  fix linking issues wrt #511128, patch by Andrei Slavoiu
Comment 8 Tolga Dalman 2014-05-24 17:27:15 UTC
Thank you. However, while I believe this is the right patch for the problem, I cannot test it due to a follow-up problem:

Making all in po
make[2]: Entering directory '/var/tmp/portage/games-strategy/freeciv-2.4.2/work/freeciv-2.4.2/po'
Makefile:60: *** missing separator.  Stop.
make[2]: Leaving directory '/var/tmp/portage/games-strategy/freeciv-2.4.2/work/freeciv-2.4.2/po'
Makefile:750: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/games-strategy/freeciv-2.4.2/work/freeciv-2.4.2'
Makefile:654: recipe for target 'all' failed

And the po/Makefile in question looks like this:

60 DISTFILES = ChangeLog Makefile.in.in POTFILES.in POTFILES.skip Strings.txt $(POFILES)
61 $(POFILES) $(GMOFILES) $(SOURCES)

so, there's a missing backslash, but I can't really explain why this happens suddenly (regardless of whether I do USE=-readline or not).

[ebuild   R    ] games-strategy/freeciv-2.4.2  USE="gtk ipv6 readline* sdl server -aimodules -auth -dedicated -ggz -mapimg -modpack -mysql -nls -postgres -qt4 -sound -sqlite" 0 kB

Any ideas ?
Comment 9 Julian Ospald 2014-05-24 17:34:47 UTC
because of eautoreconf, file a new bug
Comment 10 Tolga Dalman 2014-05-28 14:15:45 UTC
fixed and verified. Thanks.