I use hardened uclibc (gcc-3.4.6) i386-gentoo-linux-uclibc-ranlib libuClibc++.a eh_globals.o: In function `__cxa_get_globals': eh_globals.cpp:(.text+0x27): undefined reference to `___tls_get_addr' collect2: ld returned 1 exit status make[1]: *** [libuClibc++-0.2.1.so] Error 1 make[1]: Leaving directory `/var/tmp/portage/uclibc++-0.2.1/work/uClibc++-0.2.1/src' make: *** [all] Error 2 emerge --info: Portage 2.1.1 (uclibc/x86/hardened, gcc-3.4.6, uclibc-0.9.28-r0, 2.6.18-gentoo i686) ================================================================= System uname: 2.6.18-gentoo i686 Intel(R) Pentium(R) D CPU 3.00GHz Gentoo Base System version 1.12.5 Last Sync: Mon, 18 Sep 2006 01:53:01 +0000 distcc 2.18.3 i386-gentoo-linux-uclibc (protocols 1 and 2) (default port 3632) [disabled] app-admin/eselect-compiler: [Not Present] dev-java/java-config: [Not Present] dev-lang/python: 2.4.3-r1 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 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.16.1-r3 sys-devel/gcc-config: 1.3.13-r3 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i386-gentoo-linux-uclibc" CFLAGS="-march=i386 -Os -pipe -fomit-frame-pointer" CHOST="i386-gentoo-linux-uclibc" CONFIG_PROTECT="/etc /var/bind" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-Os -pipe" DISTDIR="/var/cache/distfiles" FEATURES="autoconfig buildpkg distlocks metadata-transfer nodoc noinfo noman sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LINGUAS="" MAKEOPTS="-j4" PKGDIR="/var/cache/packages/default" 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="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/alpine-portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X509 bitmap-fonts bri bzip2 cli cracklib dlloader dri elibc_uclibc encode expat extensions hardened input_devices_evdev input_devices_keyboard input_devices_mouse iproute2 ipv6 jpeg kernel_linux mad minimal ncurses netboot ogg oss pci pcmcia pic png pppd readline reflection rrdtool sensord session snmp speex spl ssl tdb truetype truetype-fonts type1-fonts uclibc uclibc++ udev usb userland_GNU userlocales video_cards_dummy video_cards_fbdev video_cards_v4l winbind wordexp xorg zlib" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
same thing happens in non hardened with gcc-4.1. mm usr # emerge --info Portage 2.1.1 (uclibc/x86/2005.1, gcc-4.1.1, uclibc-0.9.28-r0, 2.6.18-gentoo i686) ================================================================= System uname: 2.6.18-gentoo i686 Intel(R) Pentium(R) D CPU 3.00GHz Gentoo Base System version 1.12.5 Last Sync: Fri, 22 Sep 2006 17:30:07 +0000 app-admin/eselect-compiler: [Not Present] dev-java/java-config: [Not Present] dev-lang/python: 2.4.3-r1 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 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.16.1-r3 sys-devel/gcc-config: 1.3.13-r3 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i386-gentoo-linux-uclibc" CFLAGS="-Os -pipe -Wstack-protector -Wformat=2" CHOST="i386-gentoo-linux-uclibc" CONFIG_PROTECT="/etc /usr/share/X11/xkb" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/terminfo" CXXFLAGS="-Os -pipe" DISTDIR="/var/cache/distfiles" FEATURES="autoconfig buildpkg distclean distlocks genpkgindex metadata-transfer nodoc noinfo noman parallel-fetch sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LINGUAS="" MAKEOPTS="-j4" PKGDIR="/var/cache/packages/i386-gentoo-linux-uclibc/" 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="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/alpine-portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="bindist bitmap-fonts cli dlloader dri elibc_uclibc input_devices_evdev input_devices_keyboard input_devices_mouse kernel_linux minimal ncurses pcre readline reflection session spl truetype-fonts type1-fonts uclibc userland_GNU video_cards_dummy video_cards_fbdev video_cards_v4l x86 xorg zlib" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 102932 [details, diff] Fix sed error, dynamically disable unsupported features, fix __tls_get_address error Attached patch fixes the __tls_get_addr error message by - disabling TLS support on environments that don't support it (e.g. uclibc) - adding -dynamic-linker ... to link in the required tls function, which wasn't done because of -nostdlibs (need some feedback from the embedded@g.o people regarding the get_ldso_name function(s)) Fixes a sed error (the line setting UCLIBCXX_RUNTIME_PREFIX) and disables long double support on uclibc systems (missing cosl etc. math functions)
(In reply to comment #2) > Created an attachment (id=102932) [edit] The patch works for me. Thanks!
this will be fixed in next uclibc release
*** Bug 194387 has been marked as a duplicate of this bug. ***