Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 362815 - dev-db/sqlite[icu] causes symbols lookup problems with gcc-4.6
Summary: dev-db/sqlite[icu] causes symbols lookup problems with gcc-4.6
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Arfrever Frehtes Taifersar Arahesis (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: gcc-4.6
  Show dependency tree
 
Reported: 2011-04-10 09:25 UTC by iGentoo
Modified: 2011-04-18 20:48 UTC (History)
5 users (show)

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


Attachments
build.log (build.log,574.56 KB, text/plain)
2011-04-10 09:26 UTC, iGentoo
Details
emerge.info (emerge.info,5.29 KB, text/plain)
2011-04-10 09:27 UTC, iGentoo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description iGentoo 2011-04-10 09:25:03 UTC
/var/tmp/portage/dev-libs/nss-3.12.9/work/nss-3.12.9/mozilla/security/nss/cmd/shlibsign/Linux2.6_x86_64_x86_64-pc-linux-gnu-gcc_glibc_PTH_64_OPT.OBJ/shlibsign: symbol lookup error: /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.0/libstdc++.so.6: undefined symbol: _ZNSt14error_categoryD2Ev, version GLIBCXX_3.4.15
make[2]: *** [../../../dist/Linux2.6_x86_64_x86_64-pc-linux-gnu-gcc_glibc_PTH_64_OPT.OBJ/lib/libsoftokn3.chk] Error 127
make[2]: Leaving directory `/var/tmp/portage/dev-libs/nss-3.12.9/work/nss-3.12.9/mozilla/security/nss/cmd/shlibsign'
make[1]: *** [libs] Error 2


Reproducible: Always
Comment 1 iGentoo 2011-04-10 09:26:17 UTC
Created attachment 269259 [details]
build.log
Comment 2 iGentoo 2011-04-10 09:27:34 UTC
Created attachment 269261 [details]
emerge.info
Comment 3 Jory A. Pratt gentoo-dev 2011-04-11 03:41:56 UTC
Has nothing to do with gcc-4.6 I just successfully double checked the package three times.  

[bambam - ~]  emerge --info nss
Portage 2.1.9.45 (hardened/linux/amd64, gcc-4.6.0, glibc-2.13-r2, 2.6.38-hardened-ck1 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-2.6.38-hardened-ck1-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T7500_@_2.20GHz-with-gentoo-2.0.2
Timestamp of tree: Unknown
ccache version 3.1.4 [enabled]
app-shells/bash:     4.2_p8
dev-java/java-config: 2.1.11-r3
dev-lang/python:     2.7.1-r1, 3.1.3-r1
dev-util/ccache:     3.1.4
dev-util/cmake:      2.8.4
sys-apps/baselayout: 2.0.2
sys-apps/openrc:     0.8.0
sys-apps/sandbox:    2.5
sys-devel/autoconf:  2.13, 2.68
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1-r1
sys-devel/binutils:  2.21
sys-devel/gcc:       4.4.5, 4.5.2, 4.6.0
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.4-r1
sys-devel/make:      3.82
virtual/os-headers:  2.6.38 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA AdobeFlash-10.1 dlj-1.1 PUEL"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=core2 -pipe -Wimplicit-function-declaration"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
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"
CXXFLAGS="-O2 -march=core2 -pipe -Wenum-compare"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs ccache distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LC_ALL="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common"
MAKEOPTS="-j3 -s --no-print-directory"
PKGDIR="/usr/portage/packages"
PORTAGE_COMPRESS="lzma"
PORTAGE_COMPRESS_FLAGS="-z -9 -f -S .lzma"
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="/home/gentoo /home/mozilla"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 alsa amd64 audit berkdb bluetooth branding bzip2 cairo cleartype cli consolekit cracklib crypt custom-optimization cxx dbus djvu dri dvd encode fam ffmpeg gdbm gpg gtk hardened iconv jpeg justify lame laptop libffi libnotify libssh2 mad mjpeg mmx modules mp3 mpeg mudflap multilib ncurses nptl nptlonly nsplugin nss opengl openmp pam pam_ssh pcre perl png policykit python python3 readline sdl secure-delete session sound spell sqlite sse sse2 sse3 ssl ssse3 svh sysfs t1lib tcpd theora threads thunar tiff truetype udev unicode urandom vorbis wifi x264 xfce xinerama xml xorg xulrunner xv xvid 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" 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="keyboard mouse evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nouveau" 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" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

dev-libs/nss-3.12.9 was built with the following:
USE="(multilib) -utils"
Comment 4 Julien Durillon 2011-04-13 18:11:28 UTC
I have the same problem, on a fresh gentoo install. Migrated to 4.5 then 4.6, system full compiled with 4.6, and fail to compile nss…


Just before that, no problem with nss and gcc 4.5.2.
Comment 5 Marc-Antoine Perennou 2011-04-14 09:23:42 UTC
Same problem here.
Whole system recompiles with gcc 4.6, only nss failing
Comment 6 Fabio Scaccabarozzi 2011-04-16 17:07:59 UTC
I can confirm the bug too.
I have re-emerged world multiple times (I've been playing with gcc 4.6 and graphite). Re-emerging world with "-O2 -march=native -pipe" didn't help.
Before migrating to gcc 4.6 I had gcc 4.5 installed.
Comment 7 cyrillic 2011-04-17 12:13:36 UTC
(In reply to comment #3)
> Has nothing to do with gcc-4.6 I just successfully double checked the package
> three times.  
> 

I am getting the same error as the original poster, but I have only gcc-4.6.0 installed on this system.

Can you check if you actually got nss to link to the gcc-4.6 version of libstdc++, or if you are getting something like this :

# ldd /usr/lib64/libsoftokn3.so.12
...
libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6 (0x00007f4ce6322000)
Comment 8 Jory A. Pratt gentoo-dev 2011-04-17 15:49:24 UTC
Everyone having issues please provide `emerge --info gcc`

(In reply to comment #7)
> (In reply to comment #3)
> > Has nothing to do with gcc-4.6 I just successfully double checked the package
> > three times.  
> > 
> 
> I am getting the same error as the original poster, but I have only gcc-4.6.0
> installed on this system.
> 
> Can you check if you actually got nss to link to the gcc-4.6 version of
> libstdc++, or if you are getting something like this :
> 
> # ldd /usr/lib64/libsoftokn3.so.12
> ...
> libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6
> (0x00007f4ce6322000)

NSS has never had a reason to link to libstdc++ if it is on your system there are other issues.

(testing) pepsi lib64 # lddtree /usr/lib64/libsoftokn3.so.12 
libsoftokn3.so.12 => /usr/lib64/libsoftokn3.so.12 (interpreter => none)
    libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0
    libnssutil3.so => /usr/lib64/libnssutil3.so
    libplc4.so => /usr/lib64/libplc4.so
    libplds4.so => /usr/lib64/libplds4.so
    libnspr4.so => /usr/lib64/libnspr4.so
    libpthread.so.0 => /lib64/libpthread.so.0
        ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
    libdl.so.2 => /lib64/libdl.so.2
    libc.so.6 => /lib64/libc.so.6
Comment 9 Marc-Antoine Perennou 2011-04-17 16:13:52 UTC
> 
> (testing) pepsi lib64 # lddtree /usr/lib64/libsoftokn3.so.12 
> libsoftokn3.so.12 => /usr/lib64/libsoftokn3.so.12 (interpreter => none)
>     libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0
>     libnssutil3.so => /usr/lib64/libnssutil3.so
>     libplc4.so => /usr/lib64/libplc4.so
>     libplds4.so => /usr/lib64/libplds4.so
>     libnspr4.so => /usr/lib64/libnspr4.so
>     libpthread.so.0 => /lib64/libpthread.so.0
>         ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
>     libdl.so.2 => /lib64/libdl.so.2
>     libc.so.6 => /lib64/libc.so.6

libsoftokn3.so.12 => /usr/lib64/libsoftokn3.so.12 (interpreter => none)
    libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0
        libicui18n.so.46 => /usr/lib64/libicui18n.so.46
            libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6
                ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
            libm.so.6 => /lib64/libm.so.6
            libgcc_s.so.1 => /lib64/libgcc_s.so.1
        libicuuc.so.46 => /usr/lib64/libicuuc.so.46
            libicudata.so.46 => /usr/lib64/libicudata.so.46
    libnssutil3.so => /usr/lib64/libnssutil3.so
    libplc4.so => /usr/lib64/libplc4.so
    libplds4.so => /usr/lib64/libplds4.so
    libnspr4.so => /usr/lib64/libnspr4.so
    libpthread.so.0 => /lib64/libpthread.so.0
    libdl.so.2 => /lib64/libdl.so.2
    libc.so.6 => /lib64/libc.so.6

so it seems to be because of sqlite[icu]
Comment 10 Marc-Antoine Perennou 2011-04-17 16:35:49 UTC
I confirm that it builds fine with sqlite[-icu]
Comment 11 Jory A. Pratt gentoo-dev 2011-04-17 17:03:28 UTC
(In reply to comment #10)
> I confirm that it builds fine with sqlite[-icu]

Thanks for comfirming, we can now update the summary and re-assign to sqlite maintainers.
Comment 12 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2011-04-17 18:03:28 UTC
Which versions of dev-libs/icu and dev-db/sqlite?
Comment 13 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2011-04-17 18:04:43 UTC
Have you reinstalled dev-libs/icu after switching GCC version?
Comment 14 Marc-Antoine Perennou 2011-04-17 18:30:08 UTC
icu 4.6.1 and sqlite 3.7.6
the whole world have been succesfully rebuilt since the gcc 4.6 migration, yes
Comment 15 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2011-04-17 18:34:31 UTC
(In reply to comment #14)

So why comment #9 shows a path to a file in /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2 directory?
Comment 16 Marc-Antoine Perennou 2011-04-17 18:38:13 UTC
(In reply to comment #15)
> (In reply to comment #14)
> 
> So why comment #9 shows a path to a file in
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2 directory?

Because I ran it on my other computer having basically the same system but running gcc 4.5. (I had uninstalled nss on this one to try if by change it changed anything so I didn't have it any longer until I rebuild it with sqlite[-icu]

I didn't rebuild icu since then and here is its lddtree

Lou ~ # lddtree /usr/lib64/libicui18n.so                                                                                                                                                                                                                                                                               [20:29:19 - 17/04/2011]
libicui18n.so => /usr/lib64/libicui18n.so (interpreter => none)
    libicuuc.so.46 => /usr/lib64/libicuuc.so.46
        libicudata.so.46 => /usr/lib64/libicudata.so.46
        libdl.so.2 => /lib64/libdl.so.2
            ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
    libpthread.so.0 => /lib64/libpthread.so.0
    libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.0/32/libstdc++.so.6
        ld-linux.so.2 => /lib64/ld-linux.so.2
    libm.so.6 => /lib64/libm.so.6
    libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.0/32/libgcc_s.so.1
    libc.so.6 => /lib64/libc.so.6
Comment 17 Jory A. Pratt gentoo-dev 2011-04-18 20:45:19 UTC
(In reply to comment #16)
> (In reply to comment #15)
> > (In reply to comment #14)
> > 
> > So why comment #9 shows a path to a file in
> > /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2 directory?
> 
> Because I ran it on my other computer having basically the same system but
> running gcc 4.5. (I had uninstalled nss on this one to try if by change it
> changed anything so I didn't have it any longer until I rebuild it with
> sqlite[-icu]
> 
> I didn't rebuild icu since then and here is its lddtree
> 
> Lou ~ # lddtree /usr/lib64/libicui18n.so                                       
>                                                                                
>                                                                                
>                                                                       
> [20:29:19 - 17/04/2011]
> libicui18n.so => /usr/lib64/libicui18n.so (interpreter => none)
>     libicuuc.so.46 => /usr/lib64/libicuuc.so.46
>         libicudata.so.46 => /usr/lib64/libicudata.so.46
>         libdl.so.2 => /lib64/libdl.so.2
>             ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
>     libpthread.so.0 => /lib64/libpthread.so.0
>     libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.0/32/libstdc++.so.6
>         ld-linux.so.2 => /lib64/ld-linux.so.2
>     libm.so.6 => /lib64/libm.so.6
>     libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.0/32/libgcc_s.so.1
>     libc.so.6 => /lib64/libc.so.6

For the record, I just compiled sqlite-3.7.6.2 with icu enabled using gcc-4.6, then in turn rebuilt nss, compile was successful. This bug should be resolved.

(testing) pepsi lib64 # lddtree /usr/lib64/libsoftokn3.so.12 
libsoftokn3.so.12 => /usr/lib64/libsoftokn3.so.12 (interpreter => none)
    libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0
        libicui18n.so.46 => /usr/lib64/libicui18n.so.46
            libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.0/libstdc++.so.6
                ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
            libm.so.6 => /lib64/libm.so.6
            libgcc_s.so.1 => /lib64/libgcc_s.so.1
        libicuuc.so.46 => /usr/lib64/libicuuc.so.46
            libicudata.so.46 => /usr/lib64/libicudata.so.46
    libnssutil3.so => /usr/lib64/libnssutil3.so
    libplc4.so => /usr/lib64/libplc4.so
    libplds4.so => /usr/lib64/libplds4.so
    libnspr4.so => /usr/lib64/libnspr4.so
    libpthread.so.0 => /lib64/libpthread.so.0
    libdl.so.2 => /lib64/libdl.so.2
    libc.so.6 => /lib64/libc.so.6