Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 503000 - dev-libs/libmemcached-1.0.18 fails to build with sys-devel/gcc[mudflap]
Summary: dev-libs/libmemcached-1.0.18 fails to build with sys-devel/gcc[mudflap]
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All All
: Normal normal (vote)
Assignee: Robin Johnson
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-02-27 22:23 UTC by Arfrever Frehtes Taifersar Arahesis
Modified: 2014-03-13 06:31 UTC (History)
4 users (show)

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


Attachments
libmemcached-1.0.18:20140227-221937.log.xz (libmemcached-1.0.18:20140227-221937.log.xz,22.60 KB, application/x-xz)
2014-02-27 22:30 UTC, Arfrever Frehtes Taifersar Arahesis
Details
Disable usage of -fmudflapth flag (libmemcached-1.0.18.ebuild.patch,257 bytes, patch)
2014-03-03 02:37 UTC, Arfrever Frehtes Taifersar Arahesis
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Arfrever Frehtes Taifersar Arahesis 2014-02-27 22:23:41 UTC
dev-libs/libmemcached-1.0.18 fails to build.

libtool: link: x86_64-pc-linux-gnu-c++ -std=c++0x -pthread -H -g -g3 -fmudflapth -fno-inline -fno-eliminate-unused-debug-types -fno-omit-frame-pointer -Wno-unknown-pragmas -Wno-pragmas -Wall -Wextra -Wno-attributes -Wvarargs -Waddress -Warray-bounds -Wchar-subscripts -Wcomment -Wctor-dtor-privacy -Wfloat-equal -Wformat=2 -Wformat-y2k -Wmaybe-uninitialized -Wmissing-field-initializers -Wlogical-op -Wnon-virtual-dtor -Wnormalized=id -Woverloaded-virtual -Wpointer-arith -Wredundant-decls -Wshadow -Wsign-compare -Wstrict-overflow=1 -Wswitch-enum -Wtrampolines -Wundef -Wunsafe-loop-optimizations -funsafe-loop-optimizations -Wc++11-compat -Wclobbered -Wunused -Wunused-result -Wunused-variable -Wunused-parameter -Wunused-local-typedefs -Wwrite-strings -Wformat-security -fwrapv -pipe -fPIE -pie -Wsizeof-pointer-memaccess -Wpacked -Wl,-O1 -Wl,--hash-style=gnu -o clients/.libs/memcapable clients/clients_memcapable-memcapable.o libmemcached/clients_memcapable-byteorder.o  -Wl,--as-needed clients/.libs/libutilities.a libmemcached/.libs/libmemcached.so -lmcheck /usr/lib64/libsasl2.so -ldl -lresolv -pthread
/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/../../../../lib64/Scrt1.o: In function `_start':
(.text+0x20): undefined reference to `__wrap_main'
clients/clients_memcapable-memcapable.o: In function `memcached_close_socket':
/var/tmp/portage/dev-libs/libmemcached-1.0.18/work/libmemcached-1.0.18/./libmemcached/socket.hpp:63: undefined reference to `__mf_lc_shift'
/var/tmp/portage/dev-libs/libmemcached-1.0.18/work/libmemcached-1.0.18/./libmemcached/socket.hpp:63: undefined reference to `__mf_lc_mask'
/var/tmp/portage/dev-libs/libmemcached-1.0.18/work/libmemcached-1.0.18/./libmemcached/socket.hpp:63: undefined reference to `__mf_lookup_cache'
/var/tmp/portage/dev-libs/libmemcached-1.0.18/work/libmemcached-1.0.18/./libmemcached/socket.hpp:63: undefined reference to `__mf_check'
/var/tmp/portage/dev-libs/libmemcached-1.0.18/work/libmemcached-1.0.18/./libmemcached/socket.hpp:64: undefined reference to `__mf_lc_shift'
/var/tmp/portage/dev-libs/libmemcached-1.0.18/work/libmemcached-1.0.18/./libmemcached/socket.hpp:64: undefined reference to `__mf_lc_mask'
/var/tmp/portage/dev-libs/libmemcached-1.0.18/work/libmemcached-1.0.18/./libmemcached/socket.hpp:64: undefined reference to `__mf_lookup_cache'
/var/tmp/portage/dev-libs/libmemcached-1.0.18/work/libmemcached-1.0.18/./libmemcached/socket.hpp:64: undefined reference to `__mf_check'
...
Comment 1 Arfrever Frehtes Taifersar Arahesis 2014-02-27 22:30:05 UTC
Created attachment 371402 [details]
libmemcached-1.0.18:20140227-221937.log.xz
Comment 2 Arfrever Frehtes Taifersar Arahesis 2014-02-28 03:06:54 UTC
$ emerge -ptv dev-libs/libmemcached

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild     U  ] dev-libs/libmemcached-1.0.18::gentoo [1.0.17-r4::gentoo] USE="libevent sasl -debug -hsieh -static-libs" 0 kB

Total: 1 package (1 upgrade), Size of downloads: 0 kB
$ emerge --info
Portage 2.2.8_p53 (default/linux/amd64/13.0/desktop, gcc-4.8.2, glibc-2.18-r1, 3.13.5 x86_64)
=================================================================
System uname: Linux-3.13.5
ld GNU ld (Linux/GNU Binutils) 2.24.51.0.3.20140127
app-shells/bash:          4.2_p45-r1
dev-java/java-config:     2.2.0-r1000::progress
dev-lang/python:          2.6.9-r1000::progress, 2.7.7_pre20140223::progress, 3.0.1::progress, 3.1.5-r1000::progress, 3.2.5-r1000::progress, 3.3.5_pre20140223::progress, 3.4_pre20140223::progress
dev-util/cmake:           2.8.12.2
dev-util/pkgconfig:       0.28
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.10.3, 1.11.6, 1.12.6, 1.13.4, 1.14.1
sys-devel/binutils:       2.24.51.0.3
sys-devel/gcc:            4.7.3-r1, 4.8.2
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2
sys-devel/make:           4.0-r1
sys-kernel/linux-headers: 3.13 (virtual/os-headers)
sys-libs/glibc:           2.18-r1
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA AdobeFlash-11.x PUEL"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -O2 -fno-ident -frecord-gcc-switches -pipe -Wall -Wpointer-sign"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/python2.6/site-packages/buildbot/status/web /usr/lib64/python2.7/site-packages/buildbot/status/web /usr/share/config /usr/share/gnupg/qualified.txt /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /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=core2 -O2 -fno-ident -frecord-gcc-switches -pipe -Wall"
DISTDIR="/home/distfiles"
EMERGE_DEFAULT_OPTS="--quiet-build=n --verbose-main-repo-display"
FCFLAGS="-march=core2 -O2 -fno-ident -frecord-gcc-switches -pipe"                                                                                            
FEATURES="assume-digests binpkg-logs buildsyspkg collision-protect config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync metadata-transfer multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms sign split-elog split-log strict test-fail-continue unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"                                                                                     
FFLAGS="-march=core2 -O2 -fno-ident -frecord-gcc-switches -pipe"
LANG="pl_PL.UTF-8"
LC_ALL="pl_PL.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
MAKEOPTS=""
PORTAGE_CONFIGROOT="/"
USE="X a52 aac acl acpi alsa amd64 apache2 bash-completion berkdb bzip2 c++0x c++11 cairo caps cdda cddb cdr cracklib crypt cscope css ctype cups curl curlwrappers custom-cflags cxx dbus dga directfb dri dts dvb dvd dvdr dvdread encode enscript exif expat fam fbcon ffmpeg fftw filecaps flac fontconfig foomaticdb ftp gcj gd gdbm ggi gif gimp glut gmp gnuplot gnutls gphoto2 gpm graphviz gsm gstreamer gtk guile handbook hdf5 htmlhandbook iconv icu idn imagemagick imlib inotify introspection ipv6 java java5 java6 javascript jbig jit jpeg jpeg2k kde lame lapack lash lcms ldap libass libcaca libnotify libsamplerate lm_sensors lzma lzo mad matroska memlimit mhash mime mmap mmx mmxext mng modules mp3 mpeg mpi mplayer multilib musepack ncurses netcdf nls nptl nsplugin odbc ogg openal openexr opengl openmp pam pch pcntl pcre pda pdf perl png policykit portaudio posix postgres postscript ppds python qt4 rdesktop readline ruby sasl sdl semantic-desktop session shorten simplexml slang slp smp sndfile sockets speex spell sqlite sqlite3 sse sse2 sse3 ssl ssse3 subversion svg symlink syslog taglib tcl tcpd theora threads tiff tk truetype udev unicode usb vcd vim-syntax vorbis wavpack webkit wifi wmf wxwidgets x264 xattr xcb xcomposite xft xine xml xmlrpc xmp xpm xscreensaver xsl xulrunner xv xvid zlib" ABI_X86="64" APACHE2_MODULES="access_compat actions alias auth_basic authn_anon authn_core authn_dbm authn_default authn_file authz_core authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio lua mime mime_magic negotiation rewrite sed serf session session_crypto setenvif speling status unique_id unixd userdir usertrack vhost_alias" APACHE2_MPMS="worker" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LIBREOFFICE_EXTENSIONS="nlpsolver scripting-beanshell scripting-javascript" LINGUAS="pl en cs fr la lt ru sk" PYTHON_ABIS="2.7-jython 2.6 2.7 3.1 3.2 3.3 3.4" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20 ruby21" SANE_BACKENDS="plustek" USERLAND="GNU" VIDEO_CARDS="fbdev intel vesa"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, SYNC
Comment 3 Johan Bergström 2014-02-28 22:23:58 UTC
Do you by any chance have gcc built with IUSE="-mudflap" ?
Comment 4 Johan Bergström 2014-03-01 04:52:57 UTC
I rebuilt sys-devel/gcc-4.8.2 with IUSE=mudflap and got the same error. Rebuilt it with IUSE=-mudflap and the error goes away. I've been told that IUSE=mudflap was default since a few weeks back in gentoo which makes a lot of people potentially hitting this bug without rebuilding their GCC. Can someone confirm that they get the same issue/"fix"?
Comment 5 Steffen Weber 2014-03-02 13:10:03 UTC
I can confirm that recompiling sys-devel/gcc-4.8.2 with USE=-mudflap fixes the problem.

On another box, recompiling sys-devel/gcc-4.7.3-r1 with USE=-mudflap has fixed the problem, too.
Comment 6 Arfrever Frehtes Taifersar Arahesis 2014-03-03 02:37:58 UTC
Created attachment 371612 [details, diff]
Disable usage of -fmudflapth flag
Comment 7 Johan Bergström 2014-03-03 22:27:33 UTC
For history reasons, the rationale behind disabling mudflap altogether is that its deprecated in gcc 4.8 and removed in 4.9. Additionally, upstream should really be moving to -fsanitize if they are interested in similar functionality.
Comment 8 Patrick Lauer gentoo-dev 2014-03-13 06:31:43 UTC
+  13 Mar 2014; Patrick Lauer <patrick@gentoo.org> libmemcached-1.0.18.ebuild:
+  Fix mudflap usage #503000