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

Bug 282288

Summary: net-im/pidgin-2.5.9 fails to compile
Product: Gentoo Linux Reporter: ~S <prince.of.bb+gentoobugzilla>
Component: Current packagesAssignee: Gentoo Linux bug wranglers <bug-wranglers>
Status: VERIFIED INVALID    
Severity: normal CC: prince.of.bb+gentoobugzilla
Priority: High    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: build log for pidgin 2.5.9
build log for media-libs/lcms
build environment of my system

Description ~S 2009-08-22 09:44:15 UTC
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib/python2.6/config/libpython2.6.a(listobject.o): relocation R_X86_64_32 against `_Py_NoneStruct' can not be used when making a shared object; recompile with -fPIC
/usr/lib/python2.6/config/libpython2.6.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[5]: *** [libgnt.la] Error 1
make[5]: Leaving directory `/var/tmp/portage/net-im/pidgin-2.5.9/work/pidgin-2.5.9/finch/libgnt'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/var/tmp/portage/net-im/pidgin-2.5.9/work/pidgin-2.5.9/finch/libgnt'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/var/tmp/portage/net-im/pidgin-2.5.9/work/pidgin-2.5.9/finch/libgnt'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/net-im/pidgin-2.5.9/work/pidgin-2.5.9/finch'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/net-im/pidgin-2.5.9/work/pidgin-2.5.9'
make: *** [all] Error 2
 * 
 * ERROR: net-im/pidgin-2.5.9 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 3425:  Called gnome2_src_compile
 *             environment, line 2476:  Called die
 * The specific snippet of code:
 *       emake || die "compile failure"
 *  The die message:
 *   compile failure


Reproducible: Always

Steps to Reproduce:
1.emerge -uavDN update (or emerge -av pidgin)
2.above compile error


Actual Results:  
compile failed

Expected Results:  
should compile fine

relocation R_X86_64_32 against `_Py_NoneStruct' can not be used when making a shared object; recompile with -fPIC
should I give additional flags for compiling as mentioned here?

my emerge --info

Portage 2.1.6.13 (default/linux/amd64/2008.0, gcc-4.4.1, glibc-2.10.1-r0, 2.6.30-gentoo-r4 x86_64)
=================================================================
System uname: Linux-2.6.30-gentoo-r4-x86_64-Intel-R-_Core-TM-2_CPU_6420_@_2.13GHz-with-gentoo-2.0.1
Timestamp of tree: Fri, 21 Aug 2009 22:45:02 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.0_p28
dev-java/java-config: 2.1.8-r1
dev-lang/python:     2.6.2-r1, 3.1.1
dev-util/ccache:     2.4-r8
dev-util/cmake:      2.6.4-r2
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.4.3-r3
sys-apps/sandbox:    2.0
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.10.2, 1.11
sys-devel/binutils:  2.19.1-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=nocona -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks fixpackages metadata-transfer parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://10.200.15.2/os/gentoo/gentoo-os http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LC_ALL="en_US.utf-8"
LDFLAGS="-Wl,-O1"
LINGUAS="en"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/verlihub /usr/local/portage/layman/sunrise"
SYNC="rsync://10.200.15.2/gentoo/portage"
USE="X aac acl alsa amd64 asf automount bash-completion beagle berkdb bzip2 cairo cdr cleartype cli consolekit cracklib crypt dbus dri dv dvdr encode exif ffmpeg firefox flac fortran ftp gif gnome gpm gstreamer gtk gtk2 hal iconv ieee1394 isdnlog jabber java jpeg jpeg2k lm_sensors matroska mime mmx mono mp3 mp4 mpeg mplayer mudflap multilib ncurses nls nptl nptlonly ogg opengl openmp pam pch pcre pdf perl png pppd python quicktime rar readline reflection session smp spell spl sqlite sqlite3 srt sse sse2 ssl sysfs syslog tcpd threads tiff truetype unicode usb vim-syntax x264 xml xorg xscreensaver xvid yahoo zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="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 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" ELIBC="glibc" INPUT_DEVICES="evdev mouse keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS


~S
Comment 1 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2009-08-22 17:59:21 UTC
please attach the full build.log. Reopen when that is provided, thanks
Comment 2 ~S 2009-08-23 10:51:57 UTC
Created attachment 202012 [details]
build log for pidgin 2.5.9

Ebuild log for pidgin 2.5.9 attached

i can see 2.6.1 pidgin in portage (~amd64), i am compiling rite now
lets see if its resolved

~S
Comment 3 ~S 2009-08-23 11:01:03 UTC
Update - pidgin 2.6.1 compiled and installed !

so you might want to leave this bug as resolved with resolution to update/upgrade to pidgin 2.6.1

if someone is interested in debugging 2.5.9 i can try recompiling it again for the sake of more info (build log already attached)

~S
Comment 4 ~S 2009-08-26 18:11:10 UTC
"""
.libs/assert.o: relocation R_X86_64_32 against `a local symbol' can not be used
when making a shared object; recompile with -fPIC .libs/assert.o: could not
read symbols: Bad value  
"""

This means that the file assert.o was not compiled with the -fPIC flag, which it should. When you fix this kind of error, make sure only objects that are used in shared libraries are compiled with -fPIC. 

--- from http://www.gentoo.org/proj/en/base/amd64/howtos/index.xml?part=1&chap=3
go to point 3.f. Case 3: Lack of `-fPIC' flag in the software to be built.

now I am confused as to which package this bug belongs to 
python2.6? as the library in question is libpython2.6.a(listobject.o)
or does it belong to pidgin?
if its the former case then kindly reassign this bug to python devs
if latter then pidgin herd should tweak their ebuilds to compile properly 

pardon me if I am wrong, I am just another bug reporter and I didn't understand the static/non-static .a/.so gibberish :P

~S
Comment 5 ~S 2009-08-26 18:16:37 UTC
As mentioned before an upgrade to 2.6 solved the problem, but I searched again for this error as I found similar problems with another package (media-libs/lcms-1.18-r1) if you guys can confirm that this indeed is python problem, then I can file bug to python guys :)

here is the info on similar bug (compile fail) on media-libs/lcms-1.18-r1

"""
x86_64-pc-linux-gnu-g++ -shared -nostdlib /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/crtbeginS.o  .libs/_lcms_la-lcms_wrap.o  -Wl,--rpath -Wl,/var/tmp/portage/media-libs/lcms-1.18-r1/work/lcms-1.18/src/.libs -L/usr/lib64/python2.6/config ../src/.libs/liblcms.so -lpython2.6 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/../../../../lib64/crtn.o  -march=nocona -Wl,-O1 -Wl,-soname -Wl,_lcms.so -o .libs/_lcms.so
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/python2.6/config/libpython2.6.a(abstract.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/usr/lib64/python2.6/config/libpython2.6.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [_lcms.la] Error 1
make[1]: Leaving directory `/var/tmp/portage/media-libs/lcms-1.18-r1/work/lcms-1.18/python'
make: *** [all-recursive] Error 1
 * 
 * ERROR: media-libs/lcms-1.18-r1 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 2569:  Called _eapi2_src_compile
 *               ebuild.sh, line  634:  Called die
 * The specific snippet of code:
 *              emake || die "emake failed"
 *  The die message:
 *   emake failed

"""

attaching complete build.log for media-libs/lcms-1.18-r1 and also attaching build.environment

Again, redirect me(this bug) to python people if you think these two bugs are related and are caused by python

~S
Comment 6 ~S 2009-08-26 18:20:20 UTC
Created attachment 202337 [details]
build log for media-libs/lcms

build log for media-libs/lcms
one can see the error is with python libraries (.o file)


~S
Comment 7 ~S 2009-08-26 18:21:04 UTC
Created attachment 202338 [details]
build environment of my system

build environment of my system (from media-libs/lcms)

~S
Comment 8 ~S 2009-08-27 17:33:21 UTC
hmmm, looks like i have to file another bug for media-libs/lcms
i was really hoping that this was python related bug and fixing a symlink would not be that hard
Alas!
one more bug to crush :(
if anyone knows more about the -fPIC problem, please have a look at the build logs and environment

~S
Comment 9 Wormo (RETIRED) gentoo-dev 2009-09-01 06:53:12 UTC
It is strange that the builds are trying to use a static version of libpython -- do you have libpython2.6.so on your system?
Comment 10 ~S 2009-09-01 13:08:32 UTC
(In reply to comment #9)
> It is strange that the builds are trying to use a static version of libpython
> -- do you have libpython2.6.so on your system?
> 

yes I do have
~ $ ls -la /usr/lib64/libpython2.6.so
lrwxrwxrwx 1 root root 19 2009-08-25 23:29 /usr/lib64/libpython2.6.so -> libpython2.6.so.1.0

also, strange thing is that I have two versions of python, phyton 2.6 and 3.0
i emerged python manually once (i forgot to add --oneshot)
so its in my world file list

~S
Comment 11 Samuli Suominen (RETIRED) gentoo-dev 2009-09-16 12:12:54 UTC
I've seen this problem before when a someone compiled python by hand based on stupid post in forums.gentoo.org, in his case deleting the /usr/lib64/python2.6/config/libpython2.6.a file and re-emerging python helped.

Because you shouldn't have /usr/lib64/python2.6/config/libpython2.6.a anyway, because the file is installed as /usr/lib64/libpython2.6.a from the ebuild.

How did you end up having the file there is beyond me...

ssuominen@unique ~ $ ls /usr/lib64/python2.6/config/libpython2.6.a
ls: cannot access /usr/lib64/python2.6/config/libpython2.6.a: No such file or directory
ssuominen@unique ~ $ qfile -v libpython2.6.a
dev-lang/python-2.6.2-r1 (/usr/lib64/libpython2.6.a)
ssuominen@unique ~ $
Comment 12 ~S 2009-09-17 02:12:52 UTC
ohh god , thank you so much !!!
yes I did installed python manually [and yes, call me a moron, but I did emerge -C python :( ]
and then emerged python from portage (and completely forgot about the manual install)
thanks a lot
I was unable to compile loads of other packages and was even thinking of reinstalling gentoo !!
*phew*

you saved me from a lot of trouble :)

thanks again

this bug is closed!

~S