Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 181972 - dev-libs/boost installs 'd'-postfixed libraries when built with debug USE-flag
Summary: dev-libs/boost installs 'd'-postfixed libraries when built with debug USE-flag
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Tiziano Müller (RETIRED)
URL:
Whiteboard:
Keywords:
: 182844 190029 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-06-14 00:44 UTC by Nathan Sullivan
Modified: 2007-08-24 13:48 UTC (History)
5 users (show)

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


Attachments
boost-1.34.0 CONTENTS (CONTENTS,379.97 KB, text/plain)
2007-06-17 21:21 UTC, Nathan Sullivan
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nathan Sullivan 2007-06-14 00:44:02 UTC
x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -DPLUGINSDIR=\"/usr/lib/gnash/plugins\" -I.. -I. -I.. -I../libamf -I../server -I../server/swf -pthread -I/usr/X11R6/include -I/usr/include/libxml2 -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -I/u
de/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/X11R6/include -O2 -march=k8 -pipe -g -pthread -W -Wall -Wcast-align -Wcast-qual -Wpointer-arith -Wreturn-type -c FLVParser.cpp  -fPIC -DPIC -o .libs/libgnashbase_la-FLVParser.o
/bin/sh ../libtool --tag=CXX --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I..  -DPLUGINSDIR=\"/usr/lib/gnash/plugins\" -I.. -I. -I.. -I../libamf -I../server -I../server/swf -pthread -I/usr/X11R6/include -I/usr/include/libxml2  -D_GNU_
 -D_REENTRANT -I/usr/include/SDL   -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include        -I/usr/X11R6/include       -O2 -march=k8 -pipe -g -pthread     -W     -Wall     -Wcast-align     -Wcast-qual     -Wpointer-arith     -Wreturn-type      -c -o
hbase_la-embedVideoDecoderFfmpeg.lo `test -f 'embedVideoDecoderFfmpeg.cpp' || echo './'`embedVideoDecoderFfmpeg.cpp
 x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -DPLUGINSDIR=\"/usr/lib/gnash/plugins\" -I.. -I. -I.. -I../libamf -I../server -I../server/swf -pthread -I/usr/X11R6/include -I/usr/include/libxml2 -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -I/u
de/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/X11R6/include -O2 -march=k8 -pipe -g -pthread -W -Wall -Wcast-align -Wcast-qual -Wpointer-arith -Wreturn-type -c embedVideoDecoderFfmpeg.cpp  -fPIC -DPIC -o .libs/libgnashbase_la-embedVideoDecoderFfmpeg.o
embedVideoDecoderFfmpeg.cpp: In static member function 'static uint8_t* gnash::embedVideoDecoderFfmpeg::convertRGB24(AVCodecContext*, AVFrame*)':
embedVideoDecoderFfmpeg.cpp:117: warning: 'img_convert' is deprecated (declared at /usr/include/ffmpeg/avcodec.h:2588)
embedVideoDecoderFfmpeg.cpp:118: warning: 'img_convert' is deprecated (declared at /usr/include/ffmpeg/avcodec.h:2588)
embedVideoDecoderFfmpeg.cpp: In member function 'virtual std::auto_ptr<image::image_base> gnash::embedVideoDecoderFfmpeg::decodeFrame(uint8_t*, int)':
embedVideoDecoderFfmpeg.cpp:180: warning: comparison between signed and unsigned integer expressions
embedVideoDecoderFfmpeg.cpp:180: warning: comparison between signed and unsigned integer expressions
/bin/sh ../libtool --tag=CXX --mode=link x86_64-pc-linux-gnu-g++  -O2 -march=k8 -pipe -g -pthread     -W     -Wall     -Wcast-align     -Wcast-qual     -Wpointer-arith     -Wreturn-type       -Wl,--as-needed -o libgnashbase.la -rpath /usr/lib64 -release
ibgnashbase_la-config.lo libgnashbase_la-container.lo  libgnashbase_la-extension.lo libgnashbase_la-image.lo libgnashbase_la-image_filters.lo libgnashbase_la-jpeg.lo libgnashbase_la-log.lo libgnashbase_la-membuf.lo libgnashbase_la-network.lo libgnashbas
tscript.lo libgnashbase_la-rc.lo libgnashbase_la-sharedlib.lo libgnashbase_la-triangulate_float.lo libgnashbase_la-triangulate_sint32.lo libgnashbase_la-tu_file.lo  libgnashbase_la-tu_random.lo libgnashbase_la-tu_timer.lo libgnashbase_la-tu_types.lo lib
e_la-utf8.lo libgnashbase_la-utility.lo libgnashbase_la-curl_adapter.lo libgnashbase_la-noseek_fd_adapter.lo libgnashbase_la-zlib_adapter.lo libgnashbase_la-URL.lo libgnashbase_la-LoadThread.lo libgnashbase_la-FLVParser.lo  libgnashbase_la-embedVideoDec
eg.lo -L/usr/lib64 -ljpeg  -L/lib -lz  -L/usr/lib64 -lcurl -L/usr/lib64 -lGL -lGLU  -lltdl -L/usr/lib64 -lboost_date_time-sd -lboost_thread-mt-sd -L/usr/lib64 -lpthread    -lavcodec -lz -lmp3lame -lxvidcore -lfaac -lfaad -ldl -lX11 -lXext -lvorbisenc -l
lvorbis -lm -logg   -lvorbisenc -lvorbis -lm -logg   -lavformat -lavcodec -lz -lmp3lame -lxvidcore -lfaac -lfaad -ldl -lX11 -lXext -lvorbisenc -lavutil -lvorbis -lm -logg   -lavutil   -lrt -lX11 -lXi -lm
x86_64-pc-linux-gnu-g++ -shared -nostdlib /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/crtbeginS.o  .libs/libgnashbase_la-config.o .libs/libgnashbase_la-container.o .libs/libgnashbase_la-extensio
s/libgnashbase_la-image.o .libs/libgnashbase_la-image_filters.o .libs/libgnashbase_la-jpeg.o .libs/libgnashbase_la-log.o .libs/libgnashbase_la-membuf.o .libs/libgnashbase_la-network.o .libs/libgnashbase_la-postscript.o .libs/libgnashbase_la-rc.o .libs/l
ase_la-sharedlib.o .libs/libgnashbase_la-triangulate_float.o .libs/libgnashbase_la-triangulate_sint32.o .libs/libgnashbase_la-tu_file.o .libs/libgnashbase_la-tu_random.o .libs/libgnashbase_la-tu_timer.o .libs/libgnashbase_la-tu_types.o .libs/libgnashbas
8.o .libs/libgnashbase_la-utility.o .libs/libgnashbase_la-curl_adapter.o .libs/libgnashbase_la-noseek_fd_adapter.o .libs/libgnashbase_la-zlib_adapter.o .libs/libgnashbase_la-URL.o .libs/libgnashbase_la-LoadThread.o .libs/libgnashbase_la-FLVParser.o .lib
shbase_la-embedVideoDecoderFfmpeg.o  -L/usr/lib64 /usr/lib64/libjpeg.so -L/lib /usr/lib64/libcurl.so /usr/lib64/libGL.so /usr/lib/libGLU.so -L/usr/lib /usr/lib64/libltdl.so -lboost_date_time-sd -lboost_thread-mt-sd -lpthread -lavformat -lavcodec -lz /us
libmp3lame.so -lxvidcore /usr/lib64/libfaac.so /usr/lib64/libfaad.so -ldl /usr/lib64/libXext.so /usr/lib64/libvorbisenc.so /usr/lib64/libvorbis.so /usr/lib64/libogg.so -lavutil -lrt /usr/lib64/libX11.so /usr/lib64/libXi.so -L/usr/lib/gcc/x86_64-pc-linux
.2 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../.. -lstdc++ -lm -lc -lgcc_s /us
c/x86_64-pc-linux-gnu/4.1.2/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../lib64/crtn.o  -march=k8 -pthread -Wl,--as-needed -Wl,-soname -Wl,libgnashbase-0.8.0.so -o .libs/libgnashbase-0.8.0.so
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libboost_thread-mt-sd.a(mutex.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/usr/lib64/libboost_thread-mt-sd.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [libgnashbase.la] Error 1
make[2]: Leaving directory `/var/tmp/portage/net-www/gnash-0.8.0/work/gnash-0.8.0/libbase'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/net-www/gnash-0.8.0/work/gnash-0.8.0'
make: *** [all] Error 2

!!! ERROR: net-www/gnash-0.8.0 failed.
Call stack:
  ebuild.sh, line 1621:   Called dyn_compile
  ebuild.sh, line 973:   Called qa_call 'src_compile'
  ebuild.sh, line 44:   Called src_compile
  gnash-0.8.0.ebuild, line 111:   Called die


Reproducible: Always

Steps to Reproduce:
1. emerge =gnash-0.8.0
2.
3.

Actual Results:  
failed build

Expected Results:  
successful build

ive read the -fPIC guide but I dont feel very comfortable patching the ebuild myself at this point :)

Calculating dependencies /^[... done!
[ebuild   R   ] media-video/ffmpeg-0.4.9_p20070330  USE="X aac debug encode mmx ogg sdl truetype vorbis xvid zlib -a52 (-altivec) -amr -doc -dts -ieee1394 -imlib -network -oss -test -theora -threads -v4l -x264" 0 kB 

Calculating dependencies... done!
[ebuild   R   ] dev-libs/boost-1.34.0  USE="debug -doc -icu -pyste -tools" 0 kB
Comment 1 Nathan Sullivan 2007-06-14 00:44:16 UTC
Portage 2.1.2.9 (default-linux/amd64/2007.0/desktop, gcc-4.1.2, glibc-2.5-r3, 2.6.20-gentoo-r3 x86_64)
=================================================================
System uname: 2.6.20-gentoo-r3 x86_64 AMD Opteron(tm) Processor 148
Gentoo Base System release 1.12.10
Timestamp of tree: Wed, 13 Jun 2007 16:50:01 +0000
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python:     2.3.6-r2, 2.4.4-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.23b
virtual/os-headers:  2.6.21
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=k8 -pipe -g" 
CHOST="x86_64-pc-linux-gnu"     
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=k8 -pipe -g"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks fixpackages metadata-transfer nostrip sandbox sfperms strict"
GENTOO_MIRRORS="http://mirror.internode.on.net/pub/gentoo"
MAKEOPTS="-j2"                  
PKGDIR="/usr/portage/packages"  
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"       
PORTDIR="/usr/portage"          
PORTDIR_OVERLAY="/usr/local/portage-overlays/layman/xeffects /usr/local/portage-overlays/layman/php-experimental /usr/local/portage-overlays/layman/enlightenment /usr/local/portage-overlays/testing /usr/local/portage-overlays/gentoo-webapps-overlay/experimental /usr/local/portage-overlays/rezlooks-emul /usr/local/portage-overlays/gentoo-voip-overlay /usr/local/portage-overlays/kerio-overlay"
SYNC="rsync://172.17.0.2/gentoo-portage"
USE="3dnow X aac acl acpi aim alsa amd64 apache2 audiofile avahi avi bash-completion berkdb big-tables bitmap-fonts bzip2 cairo canvas cdr cli cpdflib cracklib crypt cups curl dba dbus debug divx4linux dlloader dri dvd dvdr dvdread emboss encode ethereal evo exif extraengine fam ffmpeg firefox flac fortran gd gdbm gif gimpprint glut gmp gpm gstreamer gtk gtk2 hal iconv icq idn imap innodb ipv6 isdnlog jabber java jpeg kerberos lcms ldap libcaca libg++ logrotate mad mhash midi mikmod mmx mng mono mozsvg mp3 mpeg mppe-mppc mudflap mysql mysqli ncurses nls nptl nptlonly nsplugin nvidia ogg opengl openmp pam pcntl pcre pdf pear perl php png posix pppd pulseaudio python qt3support quicktime readline reflection ruby samba sdl session slang snmp soap sockets spell spl sqlite sse sse2 ssl svg tcpd tiff truetype truetype-fonts type1-fonts unicode userlocales utf8 vorbis wddx wma xine xinerama xml xml2 xmlrpc xorg xosd xprint xsl xv xvid yahoo zlib" ALSA_CARDS="emu10k1" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nvidia" 
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-06-14 06:58:03 UTC
(In reply to comment #0)
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/bin/ld:
> /usr/lib64/libboost_thread-mt-sd.a(mutex.o): relocation R_X86_64_32 against `a
> local symbol' can not be used when making a shared object; recompile with -fPIC
> /usr/lib64/libboost_thread-mt-sd.a: could not read symbols: Bad value

Looks more like boost is broken than gnash to me...
Comment 3 Nathan Sullivan 2007-06-14 08:22:42 UTC
very likely, im not game enough to touch -fPIC issues without having the time nor the knowledge to get into learning how they work :)
Comment 4 Tiziano Müller (RETIRED) gentoo-dev 2007-06-17 18:43:14 UTC
gnash seems to try to link against the static version of boost on your system, which it really shouldn't.

Could you please the file "/var/db/pkg/dev-libs/boost-1.34.0/CONTENTS"? Thanks.
Comment 5 Nathan Sullivan 2007-06-17 21:21:09 UTC
Created attachment 122361 [details]
boost-1.34.0 CONTENTS

As requested :)
Comment 6 Tiziano Müller (RETIRED) gentoo-dev 2007-06-18 05:35:35 UTC
It seems that gnash ignores boost's shared libs with a "-d" postfix (which it shouldn't). Maybe I should add a couple of lines which introduces symlinks from the "non-debug" library name to the one with debug. This would make it possible to build boost with USE=debug and without breaking all packages depending on boost.
Comment 7 Nathan Sullivan 2007-06-18 23:04:37 UTC
your call dev-zero... im no expert with boost :)
Comment 8 Didier Link 2007-07-01 22:07:04 UTC
Hi,

This error was solved for me if I remove the use flag "debug" for boost !?
I've also clean my gcc install by removing old versions and use of fix_libtool_files.sh

After this changes, no more -fPIC problem !?

I'm on ~amd64.

Comment 9 Stefan Schweizer (RETIRED) gentoo-dev 2007-07-07 13:47:03 UTC
dev-zero, yes please do that.

And while you are at it: gnash fails with gcc-4.2.0 due to 

#include <bits/atomicity.h>
instead of
#include <ext/atomicity.h>

in /usr/include/boost/detail/atomic_count_gcc.hpp

Please fix that too.
Comment 10 Tiziano Müller (RETIRED) gentoo-dev 2007-07-15 14:45:01 UTC
Fixed in CVS.
Comment 11 Daniel Black (RETIRED) gentoo-dev 2007-07-18 11:51:26 UTC
*** Bug 182844 has been marked as a duplicate of this bug. ***
Comment 12 Tiziano Müller (RETIRED) gentoo-dev 2007-08-24 13:48:11 UTC
*** Bug 190029 has been marked as a duplicate of this bug. ***