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

Bug 106667

Summary: sablotron: usage of libstdc++ from programmes linked with gcc (not g++) requires -shared-libgcc
Product: Gentoo Linux Reporter: Milan Holzäpfel <mail>
Component: [OLD] Core systemAssignee: Text-Markup Team (OBSOLETE) <text-markup+disabled>
Status: RESOLVED FIXED    
Severity: major    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Milan Holzäpfel 2005-09-20 06:32:02 UTC
Hello, 

on my uclibc-hardened system with gcc-3.4 I experience this: 

| bombax ~ # echo 'main(){}' > t.c
| bombax ~ # gcc t.c -o t -lstdc++
| /usr/lib/gcc/i686-gentoo-linux-uclibc/3.4.4/libstdc++.so: undefined reference 
to `_Unwind_Resume@GCC_3.0'
| /usr/lib/gcc/i686-gentoo-linux-uclibc/3.4.4/libstdc++.so: undefined reference 
to `_Unwind_RaiseException@GCC_3.0'
| /usr/lib/gcc/i686-gentoo-linux-uclibc/3.4.4/libstdc++.so: undefined reference 
to `_Unwind_Resume_or_Rethrow@GCC_3.3'
| collect2: ld returned 1 exit status
| bombax ~ # gcc t.c -o t -lstdc++ -shared-libgcc
| bombax ~ # 

The sablotron ebuild contains a line saying

| append-ldflags -lstdc++

According to the above, it should read

| append-ldflags -lstdc++ -shared-libgcc

The gcc manpage states that -shared-libgcc is used automatically when using g++. 
 (But sablotron can be linked from C programmes linked with gcc, so this is 
required.) 

Regards,
Milan

Reproducible: Always
Steps to Reproduce:
1.
2.
3.




gcc is sys-devel/gcc-3.4.4-r1

Portage 2.0.51.22-r2 (uclibc/x86/hardened, gcc-3.4.4, uclibc-0.9.27-r0, 2.6.11.
12-grsec-20 i686)                                                                
=================================================================               
System uname: 2.6.11.12-grsec-20 i686 AMD Athlon(tm) 64 Processor 3000+         
Gentoo Base System version 1.6.13                                               
dev-lang/python:     2.3.4-r1, 2.4.1-r1                                         
sys-apps/sandbox:    1.2.12                                                     
sys-devel/autoconf:  2.13, 2.59-r6                                              
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6
sys-devel/binutils:  2.15.92.0.2-r10
sys-devel/libtool:   1.5.18-r1
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-gentoo-linux-uclibc"
CFLAGS="-Os -march=athlon-xp -pipe -fomit-frame-pointer"
CHOST="i686-gentoo-linux-uclibc"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/
config /var/qmail/alias /var/qmail/control /var/vpopmail/domains /var/vpopmail/
etc"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-Os -march=athlon-xp -pipe -fomit-frame-pointer"
DISTDIR="/usr/src/pkg"
FEATURES="autoconfig buildpkg distlocks nodoc noinfo noman sandbox sfperms 
strict userpriv usersandbox"
GENTOO_MIRRORS="ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo ftp://ftp.
uni-erlangen.de/pub/mirrors/gentoo http://ftp.uni-erlangen.de/pub/mirrors/gentoo 
ftp://gentoo.inode.at/source http://gentoo.inode.at/"
MAKEOPTS="-j1"
PKGDIR="/usr/portage-pkg"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/jn"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="x86 3dnow 3dnowex apache2 berkdb big-tables bzip2 crypt curl gd gnutls 
hardened imagemagick imap jabber jpeg mbox mcal mmap mmx mng mysql ncurses perl 
php pic png python readline slang sse ssl subversion svg threads tidy truetype 
uclibc unicode utf8 vpopmail xml xml2 zlib userland_GNU kernel_linux 
elibc_uclibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2005-09-20 06:37:41 UTC
*** Bug 106670 has been marked as a duplicate of this bug. ***
Comment 2 Caleb Tennis (RETIRED) gentoo-dev 2006-03-25 05:15:04 UTC
fixed the ebuild, thanks for the report