building 'dbm' extension x86_64-pc-linux-gnu-gcc -pthread -fPIC -fno-strict-aliasing -DNDEBUG -O2 -march=core2 -pipe -DHAVE_GDBM_NDBM_H -I. -I/opt/scisoft64/var/tmp/portage/dev-lang/python-2.6.4/work/Python-2.6.4/./Include -I/opt/scisoft64/usr/include -I. -IInclude -I./Include -I/opt/scisoft64/var/tmp/p ortage/dev-lang/python-2.6.4/work/Python-2.6.4/Include -I/opt/scisoft64/var/tmp/portage/dev-lang/python-2.6.4/work/Python-2.6.4 -c /opt/scisoft64/var/tmp/portage/dev-lang/python-2.6.4/work/Python-2.6.4/Modules/dbmmodule.c -o build/temp.linux-x86_64-2.6/opt/scisoft64/var/tmp/port age/dev-lang/python-2.6.4/work/Python-2.6.4/Modules/dbmmodule.o x86_64-pc-linux-gnu-gcc -pthread -shared -Wl,-O1,--hash-style=gnu,--sort-common,--as-needed -L. -fno-strict-aliasing -DNDEBUG -O2 -march=core2 -pipe -I. -IInclude -I./Include build/temp.linux-x86_64-2.6/opt/scisoft64/var/tmp/portage/dev-lang/python-2.6.4/work/Python-2.6.4/Module s/dbmmodule.o -L/opt/scisoft64/usr/lib -L. -lgdbm -lgdbm_compat -lpython2.6 -o build/lib.linux-x86_64-2.6/dbm.so *** WARNING: renaming "dbm" since importing it failed: /opt/scisoft64/usr/lib/libgdbm_compat.so.3: undefined symbol: _gdbm_memory # emerge --info =dev-lang/python-2.6.4 Portage 2.2.00.15134-prefix (prefix/linux/amd64, gcc-4.4.2, unavailable, 2.6.31.5-0.1-desktop x86_64) ================================================================= System Settings ================================================================= System uname: Linux-2.6.31.5-0.1-desktop-x86_64-Intel-R-_Xeon-R-_CPU_E5504_@_2.00GHz-with-SuSE-11.2-x86_64 Timestamp of tree: Mon, 28 Dec 2009 10:10:51 +0000 ccache version 2.4 [enabled] app-shells/bash: 4.0_p35 dev-lang/python: 2.6.4 dev-util/ccache: 2.4-r8 sys-devel/autoconf: 2.63-r01.1 sys-devel/automake: 1.10.2-r00.1, 1.11.1 sys-devel/binutils: 2.20.51.0.4 sys-devel/gcc-config: 1.4.1-r00.2 sys-devel/libtool: 2.2.6b virtual/os-headers: 2.6.30-r1 ABI="amd64" ACCEPT_KEYWORDS="~amd64-linux" ACCEPT_LICENSE="*" ACCEPT_PROPERTIES="*" 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" 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" ARCH="amd64" ASFLAGS_x86="--32" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CCACHE_DIR="/opt/scisoft64/var/ccache" CCACHE_SIZE="3G" CDEFINE_amd64="__x86_64__" CDEFINE_x86="__i386__" CFLAGS="-O2 -march=core2 -pipe" CFLAGS_x86="-m32" CHOST="x86_64-pc-linux-gnu" CHOST_amd64="x86_64-pc-linux-gnu" CHOST_x86="i686-pc-linux-gnu" CLEAN_DELAY="5" COLLISION_IGNORE="/lib/modules" COLORTERM="1" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/terminfo" CPU="x86_64" CSHEDIT="emacs" CSHRCREAD="true" CVS_RSH="ssh" CXXFLAGS="-O2 -march=core2 -pipe" DEFAULT_ABI="default" DEFAULT_PATH="/opt/scisoft64/usr/sbin:/opt/scisoft64/usr/bin:/opt/scisoft64/sbin:/opt/scisoft64/bin" DISTDIR="/opt/scisoft64/usr/portage/distfiles" EBUILD_DEFAULT_OPTS="--skip-manifest" EDITOR="/opt/scisoft64/bin/nano" ELIBC="glibc" EMERGE_DEFAULT_OPTS="-t --verbose --jobs=9 --load-average=8 --keep-going" EMERGE_WARNING_DELAY="10" ENV="/etc/bash.bashrc" EPREFIX="/opt/scisoft64" EROOT="/opt/scisoft64/" EXTRA_PATH="/usr/sbin:/usr/bin:/sbin:/bin" F77="gfortran" FCFLAGS="-O2 -march=core2 -pipe" FEATURES="assume-digests ccache collision-protect distlocks fixpackages news noinfo parallel-fetch preserve-libs protect-owned sfperms splitdebug strict unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FETCHCOMMAND="/opt/scisoft64/usr/bin/wget -t 5 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}"" FFLAGS="-O2 -march=core2 -pipe" FORTRANC="gfortran" FROM_HEADER="" GCC_SPECS="" GENTOO_MIRRORS="http://gentoo.j-schmitz.net/mirror/ ftp://ftp.gentoo.mesh-solutions.com/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ http://mirror.switch.ch/ftp/mirror/gentoo/" GROUP="ibi" G_BROKEN_FILENAMES="1" G_FILENAME_ENCODING="@locale,UTF-8,ISO-8859-15,CP1252" HISTSIZE="1000" HOME="/root" HOST="bes" HOSTNAME="bes.ibi.kfa-juelich.de" HOSTTYPE="x86_64" INFOPATH="/opt/scisoft64/usr/share/info:/opt/scisoft64/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.2/info" INPUTRC="/etc/inputrc" INPUT_DEVICES="keyboard mouse" I_KNOW_WHAT_I_AM_DOING="yes" JAVA_BINDIR="/usr/lib64/jvm/jre/bin" JAVA_HOME="/usr/lib64/jvm/jre" JAVA_ROOT="/usr/lib64/jvm/jre" JRE_HOME="/usr/lib64/jvm/jre" KERNEL="linux" LANG="de_DE.UTF-8" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LDFLAGS="-Wl,-O1,--hash-style=gnu,--sort-common,--as-needed" LDFLAGS_x86="-m elf_i386" LESS="-R -M --shift 5" LESSCLOSE="lessclose.sh %s %s" LESSKEY="/etc/lesskey.bin" LESSOPEN="|lesspipe.sh %s" LESS_ADVANCED_PREPROCESSOR="no" LIBDIR_amd64="lib" LIBDIR_amd64_fbsd="lib64" LIBDIR_ppc="lib32" LIBDIR_ppc64="lib64" LIBDIR_sparc32="lib32" LIBDIR_sparc64="lib64" LIBDIR_x86="lib32" LIBDIR_x86_fbsd="lib32" LIBXCB_ALLOW_SLOPPY_LOCK="1" LINGUAS="en" LOGNAME="justin" LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:" LS_OPTIONS="-A -N --color=tty -T 0" MACHTYPE="x86_64-suse-linux" MAIL="/var/mail/justin" MAKEOPTS="-j32 -l12" MANPATH="/opt/scisoft64/usr/share/man:/opt/scisoft64/usr/share/binutils-data/x86_64-pc-linux-gnu/2.20.51.0.4/man:/opt/scisoft64/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.2/man:/usr/share/man" MINICOM="-c on" MORE="-sl" MULTILIB_ABIS="amd64" MULTILIB_STRICT_DENY="64-bit.*shared object" MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X11R6/lib" MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage)" NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" NNTPSERVER="news" OMP_NUM_THREADS="8" OSTYPE="linux" PAGER="/opt/scisoft64/usr/bin/less" PATH="/opt/scisoft64/usr/sbin:/opt/scisoft64/usr/bin:/opt/scisoft64/sbin:/opt/scisoft64/bin:/opt/scisoft64/opt/bin:/opt/scisoft64/usr/x86_64-pc-linux-gnu/gcc-bin/4.4.2:/usr/sbin:/usr/bin:/sbin:/bin" PKGDIR="/opt/scisoft64/usr/portage/packages" PKG_CONFIG_PATH="/opt/scisoft64/usr/lib/pkgconfig:/opt/scisoft64/usr/share/pkgconfig" PORTAGE_ARCHLIST="ppc x86-openbsd ppc-openbsd ppc64 x86-winnt x86-fbsd ppc-aix alpha arm x86-freebsd s390 amd64 arm-linux x86-macos x64-openbsd ia64-hpux hppa x86-netbsd amd64-linux ia64-linux x86 sparc-solaris x64-freebsd sparc64-solaris x86-linux x64-macos sparc m68k-mint ia64 mips ppc-macos x86-interix hppa-hpux amd64-fbsd x64-solaris mips-irix m68k sh x86-solaris sparc-fbsd" PORTAGE_BINHOST_CHUNKSIZE="3000" PORTAGE_BIN_PATH="/opt/scisoft64/usr/lib/portage/bin" PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png" PORTAGE_CONFIGROOT="/opt/scisoft64/" PORTAGE_DEBUG="0" PORTAGE_DEPCACHEDIR="/opt/scisoft64/var/cache/edb/dep" PORTAGE_ECLASS_WARNING_ENABLE="0" PORTAGE_ELOG_CLASSES="info warn error log" PORTAGE_ELOG_MAILFROM="root@localhost" PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}" PORTAGE_ELOG_MAILURI="root" PORTAGE_ELOG_SYSTEM="save echo" PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5" PORTAGE_FETCH_RESUME_MIN_SIZE="350K" PORTAGE_GID="0" PORTAGE_GROUP="root" PORTAGE_INST_GID="0" PORTAGE_INST_UID="0" PORTAGE_PYM_PATH="/opt/scisoft64/usr/lib/portage/pym" PORTAGE_ROOT_USER="root" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_RSYNC_RETRIES="3" PORTAGE_TMPDIR="/opt/scisoft64/var/tmp" PORTAGE_USER="root" PORTAGE_VERBOSE="1" PORTAGE_WORKDIR_MODE="0700" PORTDIR="/opt/scisoft64/usr/portage" PROFILEREAD="true" PROFILE_ONLY_VARIABLES="ARCH ELIBC KERNEL USERLAND" PS1="\[\033[01;36m\](SCISOFT) \[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] " PWD="/root" PYTHONSTARTUP="/etc/pythonstart" QT_SYSTEM_DIR="/usr/share/desktop-data" QUICKPKG_DEFAULT_OPTS="--umask=0011 --include-config=y" RESUMECOMMAND="/opt/scisoft64/usr/bin/wget -c -t 5 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}"" ROOT="/" ROOTPATH="/opt/scisoft64/opt/bin:/opt/scisoft64/usr/x86_64-pc-linux-gnu/gcc-bin/4.4.2" RPMDIR="/opt/scisoft64/usr/portage/rpm" RUBY_TARGETS="ruby18" SHELL="/opt/scisoft64/bin/bash" SHLVL="5" SSH_AUTH_SOCK="/tmp/ssh-jkrfG22567/agent.22567" SSH_CLIENT="134.94.112.170 43129 22" SSH_CONNECTION="134.94.112.170 43129 134.94.85.173 22" SSH_SENDS_LOCALE="yes" SSH_TTY="/dev/pts/0" STAGE1_USE="nptl nptlonly unicode" STY="25455.pts-0.bes" SYMLINK_LIB="" SYNC="rsync://rsync.prefix.freens.org/gentoo-portage-prefix" TERM="screen" USE="X amd64 bash-completion berkdb bzip2 c++ cli cracklib crypt cxx dri gdbm gmp iconv lzma mmx modules mudflap nano-syntax ncurses nptl nptlonly openmp pcre perl png pppd prefix python readline reflection session spl sse sse2 ssl sysfs tcpd threads tk truetype unicode xorg zlib" 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" 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="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="radeonhd" USER="justin" USERLAND="GNU" USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CAMERAS CROSSCOMPILE_OPTS DVB_CARDS ELIBC FCDSL_CARDS FOO2ZJS_DEVICES FRITZCAPI_CARDS INPUT_DEVICES KERNEL LCD_DEVICES LINGUAS LIRC_DEVICES MISDN_CARDS NETBEANS_MODULES QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS RUBY_TARGETS SANE_BACKENDS USERLAND VIDEO_CARDS" USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND" USE_ORDER="env:pkg:conf:defaults:pkginternal:env.d" VENDOR="suse" VIDEO_CARDS="radeonhd" WINDOW="0" WINDOWMANAGER="/usr/bin/startkde" XCURSOR_THEME="DMZ" XDG_CONFIG_DIRS="/etc/xdg" XDG_DATA_DIRS="/usr/local/share:/usr/share:/etc/opt/kde3/share:/usr/share/gnome/help" XKEYSYMDB="/usr/share/X11/XKeysymDB" XNLSPATH="/usr/share/X11/nls" _="/opt/scisoft64/usr/bin/emerge" ================================================================= Package Settings ================================================================= dev-lang/python-2.6.4 was built with the following: USE="gdbm ncurses (prefix) readline sqlite ssl threads tk (wide-unicode) xml (-aqua) (-berkdb) -build -doc -examples -ipv6 -wininst" LDFLAGS="-Wl,-O1,--hash-style=gnu,--sort-common -L."
Created attachment 214378 [details] dev-lang/python-2.6.4 build.log
Might be related to bug 165268
is this during a bootstrap?
Do you have gdbm installed? It looks like libgdbm_compat.so bails for missing symbols, which more looks like this is not specific.
It is always like that. I have gdbm installed. Python only builds "automagically" the dbm lib if gdbm is installed ( bad behaviour !!). So when I unemerge gdbm it installes fine, after reemergeing gdbm it is broken again.
The patch from bug 143580 fixed it.
@python folks: seems we need -lgdbm here
(In reply to comment #7) I use --as-needed and I have never reproduced such a bug with Python. I see "-lgdbm -lgdbm_compat" in build log.
I don't have those problems on clean bare gentoo, but found them here.
It just looks like --as-needed is broken in this respect, and I have no idea how to fix it. If you find clues, please reopen this bug.
*** Bug 331369 has been marked as a duplicate of this bug. ***
reopening due to dupe
"/usr/lib/libgdbm_compat.so.3: undefined symbol: _gdbm_memory" would be a bug in sys-libs/gdbm.
except that gdbm_compat already needs gdbm and that provides gdbm_memory. since it only appears to fail on prefix systems, i guess it's back on their portable heads to figure out why that environment is breaking things. $ readelf -d /usr/lib/libgdbm_compat.so | grep gdbm.so 0x0000000000000001 (NEEDED) Shared library: [libgdbm.so.3] $ readelf -s /usr/lib/libgdbm.so | grep gdbm_memory 31: 0000000000205160 16 OBJECT GLOBAL DEFAULT 24 _gdbm_memory and libgdbm_compat is linked in the correct order when emerging gdbm: x86_64-pc-linux-gnu-gcc -shared dbminit.lo delete.lo fetch.lo store.lo seq.lo close.lo dbmopen.lo dbmdelete.lo dbmfetch.lo dbmstore.lo dbmseq.lo dbmclose.lo dbmdirfno.lo dbmpagfno.lo dbmrdonly.lo -Wl,--rpath -Wl,/usr/lib64 -L/usr/lib64 -L/var/tmp/portage/sys-libs/gdbm-1.8.3-r4/image//usr/lib64 -lgdbm -Wl,-O1 -Wl,-soname -Wl,libgdbm_compat.so.3 -o .libs/libgdbm_compat.so.3.0.0 objects first followed by -lgdbm
Work around applied. %% svn di python-2.6.5-r2.ebuild Index: python-2.6.5-r2.ebuild =================================================================== --- python-2.6.5-r2.ebuild (revision 58609) +++ python-2.6.5-r2.ebuild (working copy) @@ -185,6 +185,9 @@ } src_configure() { + # Apparently, no one knows how to solved this as-needed failure. + # bug 298674 Apply workaround for now. + use prefix && append-ldflags $(no-as-needed) # Disable extraneous modules with extra dependencies. if use build; then export PYTHON_DISABLE_MODULES="dbm _bsddb gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
ok, on an ELF system at hand, $ readelf -d /usr/lib/libgdbm_compat.so | grep gdbm.so results in nothing. So that would mean this is a problem in gdbm on Prefix. Removing python, as it seems to have nothing to do with it.
gdbm-1.8.3-r04.1 has the correct needed entry, building python also succeeds with this version. (undoing the hack in the ebuild, of course)