The reason being that it doesn't set '-fPIC' when building code for the libraries. Unfortunately its "configure" script is hand-generated shell script, and the Makefiles are maintained manually, which makes fixing this sort of thing a bit awkward. If it had been autotools stuff, this would all have been managed properly for all arches. Adding the following: # Ensure stuff is built PIC sed -i -e 's/CFLAGS= /CFLAGS= -fPIC /' \ ${S}/modules/*/Makefile \ ${S}/src/*/Makefile \ ${S}/src/Makefile to the end of src_unpack() did the trick for me (hardened x86), but I notice there's some attempt to add -fPIC on amd64 in the configure script, although I wouldn't be surprised if that's ineffective anyway - the Makefiles generally set CFLAGS, rather than append to it. Portage 2.1.2_rc2-r1 (hardened/x86/2.6, gcc-3.4.6/hardened, glibc-2.4-r4, 2.6.18-hardened i686) ================================================================= System uname: 2.6.18-hardened i686 Mobile Intel(R) Pentium(R) III CPU - M 1200MHz Gentoo Base System version 1.12.6 Last Sync: Unknown distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [disabled] app-admin/eselect-compiler: 2.0.0_rc2-r1 dev-java/java-config: 1.3.7, 2.0.30 dev-lang/python: 2.3.5-r2, 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r1 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.60 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.15.92.0.2-r9, 2.15.92.0.2-r10, 2.16-r1, 2.16.1-r3 sys-devel/gcc-config: 2.0.0_rc1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-ggdb2 -O2 -march=pentium3 -pipe -Wall -Wstack-protector -Wtrampolines" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib/fax /usr/lib/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/spool/fax/etc" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/eselect /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-ggdb2 -O2 -march=pentium3 -pipe -Wall -Wstack-protector -Wtrampolines" DISTDIR="/data/g2/distfiles" FEATURES="autoaddcvs autoconfig collision-protect cvs distlocks fixpackages installsources metadata-transfer pax sandbox sfperms sign splitdebug strict stricter test userpriv" GENTOO_MIRRORS="http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://ftp.linux.ee/pub/gentoo/distfiles/ http://ftp.easynet.nl/mirror/gentoo/ http://ftp.heanet.ie/pub/gentoo/ http://gentoo.osuosl.org/" LC_ALL="en_GB.utf8" LDFLAGS="-Wl,-O1" LINGUAS="en_GB en it de es fr" MAKEOPTS="-j1" PKGDIR="/data/g2/pkgdir" 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" PORTAGE_TMPDIR="/data/g2/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/data/g2/dev-overlays/kevquinn/hardened/toolchain /data/g2/dev-overlays/kevquinn/hardened/xorg /var/portage" SYNC="cvs://kevquinn@cvs.gentoo.org:/var/cvsroot" USE="X a52 aac acl acpi alsa apache2 arts berkdb bluetooth boundschecking bzip2 caps cdr crypt cups dbus dlloader dri dts dv dvd dvdr dvdread elibc_glibc encode faad fbcon ffmpeg fortran gcj gif gnokii gtk gtk2 hal hardened hardenedphp ieee1394 imagemagick input_devices_keyboard input_devices_mouse ipv6 java javascript jikes jpeg jpeg2k kde kdeenablefinal kerberos kernel_linux ldap libcaca linguas_de linguas_en linguas_en_GB linguas_es linguas_fr linguas_it mad madwifi mailwrapper mbox mmx mozilla mp3 mp4 mpeg mysql nas nls nptl nsplugin odbc ogg openexr opengl oss pam pda perl pic png postgres python qt qt3 qt4 quicktime readline samba scanner sdl slp sndfile spell sse ssl svg tcl tcltk tcpd test theora threads tidy tiff timidity tk truetype unicode usb userland_GNU userlocales v4l video_cards_radeon video_cards_vesa video_cards_vga vorbis wifi wma x264 x86 xinerama xml xml2 xorg xprint xv xvid zlib" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, PORTAGE_RSYNC_EXTRA_OPTS
see bug #156016 I've fixed it in 0.4.2-r1, feel free to ask for it to be stabilized if you think it's ready (that's mostly checking if everything is sane on a stable system with this version). Bug #156637 might also be a good reason to ask for it to go stable.
fixed in 0.4.2-r1 which has gone stable since