Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 486646 - media-libs/libwebp-0.3.1 - gif2webp-gif2webp.o: In function `main': gif2webp.c:(.text.startup+0x234): undefined reference to `GifErrorString'
Summary: media-libs/libwebp-0.3.1 - gif2webp-gif2webp.o: In function `main': gif2webp....
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Graphics Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-10-01 12:30 UTC by Billy DeVincentis
Modified: 2013-10-03 15:59 UTC (History)
2 users (show)

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


Attachments
build.log (build.log,104.95 KB, text/plain)
2013-10-01 12:30 UTC, Billy DeVincentis
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Billy DeVincentis 2013-10-01 12:30:15 UTC
Created attachment 359864 [details]
build.log

-but-set-variable -Wunused -Wvla -march=native -O2 -pipe -pthread -Wl,-O1 -Wl,--as-needed -o .libs/dwebp dwebp-dwebp.o  ./.libs/libexampleutil.a -lpng16 -ljpeg ../src/.libs/libwebpdecoder.so -pthread
/bin/sh ../libtool  --tag=CC   --mode=link x86_64-pc-linux-gnu-gcc -m32 -Wall -Wdeclaration-after-statement -Wextra -Wmissing-declarations -Wmissing-prototypes -Wold-style-definition -Wshadow -Wunused-but-set-variable -Wunused -Wvla -march=native -O2 -pipe -pthread  -Wl,-O1 -Wl,--as-needed -o webpmux webpmux-webpmux.o libexampleutil.la ../src/mux/libwebpmux.la ../src/libwebp.la 
libtool: link: x86_64-pc-linux-gnu-gcc -m32 -Wall -Wdeclaration-after-statement -Wextra -Wmissing-declarations -Wmissing-prototypes -Wold-style-definition -Wshadow -Wunused-but-set-variable -Wunused -Wvla -march=native -O2 -pipe -pthread -Wl,-O1 -Wl,--as-needed -o .libs/gif2webp gif2webp-gif2webp.o  ./.libs/libexampleutil.a ../src/mux/.libs/libwebpmux.so ../src/.libs/libwebp.so -lgif -pthread
gif2webp-gif2webp.o: In function `main':
gif2webp.c:(.text.startup+0x234): undefined reference to `GifErrorString'
collect2: error: ld returned 1 exit status
make[2]: *** [gif2webp] Error 1
make[2]: *** Waiting for unfinished jobs....
libtool: link: x86_64-pc-linux-gnu-gcc -m32 -Wall -Wdeclaration-after-statement -Wextra -Wmissing-declarations -Wmissing-prototypes -Wold-style-definition -Wshadow -Wunused-but-set-variable -Wunused -Wvla -march=native -O2 -pipe -pthread -Wl,-O1 -Wl,--as-needed -o .libs/webpmux webpmux-webpmux.o  ./.libs/libexampleutil.a ../src/mux/.libs/libwebpmux.so ../src/.libs/libwebp.so -pthread
make[2]: Leaving directory `/var/tmp/portage/media-libs/libwebp-0.3.1/work/libwebp-0.3.1-x86/examples'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/media-libs/libwebp-0.3.1/work/libwebp-0.3.1-x86'
make: *** [all] Error 2
 * ERROR: media-libs/libwebp-0.3.1::gentoo failed (compile phase):
 *   emake failed
Comment 1 Billy DeVincentis 2013-10-01 12:30:45 UTC
emerge --info
Portage 2.2.7 (default/linux/amd64/13.0/desktop, gcc-4.8.1, glibc-2.17, 3.11.2-gentoo x86_64)
=================================================================
System uname: Linux-3.11.2-gentoo-x86_64-Intel-R-_Core-TM-_i7-3960X_CPU_@_3.30GHz-with-gentoo-2.2
KiB Mem:    65921592 total,  28545632 free
KiB Swap:    2096124 total,   2096124 free
Timestamp of tree: Tue, 01 Oct 2013 04:00:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
app-shells/bash:          4.2_p45
dev-java/java-config:     2.2.0
dev-lang/python:          2.7.5-r2, 3.2.5-r2, 3.3.2-r2
dev-util/cmake:           2.8.11.2
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.12
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.6.3-r1, 1.9.6-r3, 1.10.3, 1.11.6, 1.12.6, 1.13.4, 1.14
sys-devel/binutils:       2.23.1
sys-devel/gcc:            4.8.1
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.11 (virtual/os-headers)
sys-libs/glibc:           2.17
Repositories: gentoo miscellaneous
Installed sets: @system
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -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/dconf /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=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--keep-going --quiet-build=n"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildpkg 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 xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j24 -l30"
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="/usr/portage/local/miscellaneous"
USE="3dnow X a52 aac aalib accessibility acl acpi aften alsa amd64 animate archive ares artworkextra audio audiofile avahi bash-completion beep berkdb bidi bittorrent bluetooth bookmarks branding bzip2 cairo cdda cddb cdio cdr chm cli clucene corefonts cpudetection cracklib crypt css cups curl cxx dbus declarative deprecated designer-plugin device-mapper dga directfb discouraged doc dri dts dv dvb dvd dvdnav dvdr ebook eds elisp emacs emboss emerald encode esd eselect examples exif expat extra-tools extras fam fat fax fbcon fbcondecor ffmpeg firefox flac flash fltk fontconfig foomaticdb fortran ftp fts3 fuse g3dvl gcj gd gdbm gdu ggi gif gimp glep glib gnome gnutls gphoto2 gpm gstreamer gtk handbook hddtemp hfs hpijs html httpd hwdb hyperestraier iconv idn imagemagick imlib inkjar inotify ipv6 jack jadetex java jfs joystick jpeg jpeg2k kde kdrive kerberos konqueror lame lcms ldap libcaca libnotify libsamplerate live lm_sensors mad mail matroska md5sum mdnsresponder-compat mikmod mime mjpeg mmx mmxext mng modules mono mozilla mp3 mp4 mpeg mplayer mudflap multilib musepack musicbrainz mysql nas nautilus ncurses networking new-login nls npp nptl nsplugin ntfs objc odbc offensive ogg openal openexr opengl openmp osdmenu pam pango pcre pdf perl plasma png policykit postgres ppds ps pulseaudio python qt3support qt4 quicktime raptor rar rdesktop readline real realmedia reflection regex reiser4 reiserfs reports samba sametime scanner script sdl secure-delete semantic-desktop servletapi session sip skins slang slp smbclient smp sndfile snmp sound speech speex spell sqlite sse sse2 ssl startup-notification static-ppds stream subversion svg swat sysfs syslog systemd tcpd templates themes theora threads thumbnail tidy tiff timidity tk tools truetype udev udisks unicode unsupported upower usb utils v4l2 vala vcd vdpau vdr video vlm vmware_guest_linux vorbis wav wavpack weather webkit win32codecs wmf wxwidgets x264 xattr xcb xcomposite xfs xine xml xorg xpm xscreensaver xv xvid xvmc zeroconf zlib" ABI_X86="32 64" 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 ubx" INPUT_DEVICES="evdev joystick keyboard mouse" 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_2 python3_3" RUBY_TARGETS="ruby19 ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev nvidia vesa" 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"
USE_PYTHON="2.7 3.2 3.3"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC
Comment 2 Ian Abbott 2013-10-03 09:07:56 UTC
I think this is because media-libs/giflib is not multilib-aware, so only the 64-bit version of libgif.so has been built.  So when media-libs/libwebp is built with USE="gif" and ABI_X86="64 32", the 32-bit build fails due to the missing 32-bit libgif.so.
Comment 3 Ian Abbott 2013-10-03 09:24:27 UTC
As a temporary workaround, I built media-libs/libwebp with USE="-abi_x86_32".  This means that only the 64-bit libraries get built.

Alternatively, another temporary workaround is to build media-libs/libwebp with USE="-gif".  That will drop gif support in the package, but will build both the 64-bit and 32-bit libraries.

The real fix is to make the media-libs/giflib package multilib-aware.
Comment 4 Samuli Suominen (RETIRED) gentoo-dev 2013-10-03 09:44:22 UTC
Looks more like giflib-4.2 porting bug, in need of similar patch to this:
http://devel.mplayer2.org/attachment/ticket/257/giflib_420_fix.2.patch
Comment 5 Samuli Suominen (RETIRED) gentoo-dev 2013-10-03 09:46:03 UTC
(In reply to Ian Abbott from comment #3)
> As a temporary workaround, I built media-libs/libwebp with
> USE="-abi_x86_32".  This means that only the 64-bit libraries get built.
> 
> Alternatively, another temporary workaround is to build media-libs/libwebp
> with USE="-gif".  That will drop gif support in the package, but will build
> both the 64-bit and 32-bit libraries.
> 
> The real fix is to make the media-libs/giflib package multilib-aware.

`qlist libwebp  |grep lib64  | xargs objdump -p |grep NEEDED|grep gif` gives no results, as in, none of the libwebp libraries use libgif
Comment 6 Ian Abbott 2013-10-03 10:01:54 UTC
(In reply to Samuli Suominen from comment #5)
> (In reply to Ian Abbott from comment #3)
> > As a temporary workaround, I built media-libs/libwebp with
> > USE="-abi_x86_32".  This means that only the 64-bit libraries get built.
> > 
> > Alternatively, another temporary workaround is to build media-libs/libwebp
> > with USE="-gif".  That will drop gif support in the package, but will build
> > both the 64-bit and 32-bit libraries.
> > 
> > The real fix is to make the media-libs/giflib package multilib-aware.
> 
> `qlist libwebp  |grep lib64  | xargs objdump -p |grep NEEDED|grep gif` gives
> no results, as in, none of the libwebp libraries use libgif

True, it's only /usr/bin/gif2webp that uses libgif.  It you can live without that utility, the `USE="-gif"` workaround is the better of the two I suggested earlier.
Comment 7 Samuli Suominen (RETIRED) gentoo-dev 2013-10-03 15:59:08 UTC
+  03 Oct 2013; Samuli Suominen <ssuominen@gentoo.org> libwebp-0.3.1.ebuild:
+  Stop building gif2webp binary for non-native ABI to avoid build failure (and
+  to avoid converting giflib to multilib needlessly) wrt #486646 by Ian Abbott

http://sources.gentoo.org/viewvc.cgi/gentoo-x86/media-libs/libwebp/libwebp-0.3.1.ebuild?r1=1.12&r2=1.13