Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 177909 - nspluginwrapper fails to compile: undefined reference to `__guard'
Summary: nspluginwrapper fails to compile: undefined reference to `__guard'
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Hardened (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: The Gentoo Linux Hardened Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-05-10 12:56 UTC by Calum
Modified: 2011-06-08 22:29 UTC (History)
3 users (show)

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


Attachments
Patch adding SSP function stubs stolen from one of solar's patches (nspluginwrapper-0.9.91.4_ssp.patch,648 bytes, patch)
2007-08-21 03:57 UTC, Matthew Kasa (RETIRED)
Details | Diff
Patch to nspluginwrapper-0.9.91.4.ebuild applying the patch. (nspluginwrapper-0.9.91.4.ebuild.patch,851 bytes, patch)
2007-08-21 04:01 UTC, Matthew Kasa (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Calum 2007-05-10 12:56:55 UTC
Emerging nspluginwrapper (0.9.91.2/3/4) throws up lots of undefined references:
tinfo.cc:(.text.__dynamic_cast+0x19): undefined reference to `__guard'
tinfo.cc:(.text.__dynamic_cast+0xf7): undefined reference to `__guard'
tinfo.cc:(.text.__dynamic_cast+0x113): undefined reference to `__stack_smash_handler'

Reproducible: Always




*** Deprecated use of action 'info', use '--info' instead
Portage 2.1.2.2 (default-linux/amd64/2006.1/desktop, gcc-3.4.4-vanilla, glibc-2.3.6-r5, 2.6.19.1 x86_64)
=================================================================
System uname: 2.6.19.1 x86_64 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.6.13
Timestamp of tree: Thu, 10 May 2007 03:29:01 +0000
dev-java/java-config: 1.3.7, 2.0.31
dev-lang/python:     2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1, 1.10
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.12-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r1
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /var/bind"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/php/apache1-php5/ext-active/ /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.virginmedia.com http://gentoo.osuosl.org http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LINGUAS="en_GB"
PKGDIR="/usr/portage/packages"
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 --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/home/portageoverlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="a52 aac aalib acl aim alsa amd64 amr apache2 aper avi berkdb bzip2 bzlib cdparanoia crypt dga directfb divx4linux dlloader dri dv dvb dvd dvdr dvdread encode faac faad ffmpeg fla flash gd-external gdbm gif gmp gphoto2 gtk2 hardened ieee1394 imlib ipv6 jabber jack java jpeg kde live lm_sensors logrotate lzo mad maildir matroska mozbranding moznopango mozsvg mp3 mp4 mpeg mpeg4 mplayer msn network nls nodrm nsplugin ntlm ogg oggvorbis opengl oscar pam pcre perl php png postgres quotas rrdtool rtc samba sdl session sftplogging ssl svg tcpd tga theora tiff truetype truetype-fonts ukcid underscores unicode v4l v4l2 voodoo3 vorbis xanim xfs xml2 xorg xv xvid xvmc yahoo yv12 zaptel 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 mulaw multi null plug rate route share shm softvol" DVB_CARDS="tda1004x" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en_GB" LIRC_DEVICES="devinput" USERLAND="GNU" VIDEO_CARDS="nvidia nv"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2007-05-10 14:31:37 UTC
Upgrade your toolchain before reporting compile issues, please. Plus, remove hardened from your USE and either use proper hardened profiles if needed.

http://www.gentoo.org/doc/en/gcc-upgrading.xml
Comment 2 Calum 2007-05-10 15:17:34 UTC
> Comment  #1 From Jakub Moc  2007-05-10 14:31:37 0000   -------

> Upgrade your toolchain before reporting compile issues, please. 

Why? There's nothing wrong with my toolchain.
If nspluginwrapper needs a specific version of glibc/gcc/whatever to compile, then surely they should be listed as dependencies.
If it can't be used with certain flags, they should block.
Gentoo's USE flag/ebuild system is amazing - it would be nice if developers used it to its potential.

I'm not someone who upgrades every night - I follow the GLSAs, and that's pretty much it, unless I need some new functionality.

> Plus, remove hardened from your USE 

It's not in there, and nspluginwrapper doesn't use it.

> and either use proper hardened profiles if needed.

$ ls -ld /etc/make.profile
lrwxrwxrwx 1 root root 58 Dec 14 17:23 /etc/make.profile -> ../usr/portage/profiles/default-linux/amd64/2006.1/desktop

I'm not using hardened. I know my GCC is a hardened version, but I tried it with the -vanilla version, and it still didn't work.

And if it requires a non-hardened glibc/gcc, then if you said this in the reply, other people with the same problem could benefit from it.

Reopening so I can get a reply from Jakub about this.
Comment 3 Jakub Moc (RETIRED) gentoo-dev 2007-05-10 15:19:16 UTC
We don't support gcc-3.4.4; and we don't support using USE=hardened on non-hardened profiles. Sorry, don't file bugs about this.
Comment 4 Matthew Kasa (RETIRED) gentoo-dev 2007-07-11 21:45:04 UTC
While emerging net-www/nspluginwrapper-0.9.91.4 on a hardened amd64 box with the hardened/amd64/multilib profile:

/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(eh_type.o): In function `__cxa_current_exception_type':
: undefined reference to `__guard'
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(eh_type.o): In function `__cxa_current_exception_type':
: undefined reference to `__stack_smash_handler'
lsb-build-i386/libc_nonshared.a(libc_nonshared.o): In function `__libc_csu_init':
/var/tmp/portage/net-www/nspluginwrapper-0.9.91.4/work/nspluginwrapper-0.9.91.4/lsb-build/stub_libs/libc_nonshared.c:62: undefined reference to `__guard'
/var/tmp/portage/net-www/nspluginwrapper-0.9.91.4/work/nspluginwrapper-0.9.91.4/lsb-build/stub_libs/libc_nonshared.c:88: undefined reference to `__guard'
/var/tmp/portage/net-www/nspluginwrapper-0.9.91.4/work/nspluginwrapper-0.9.91.4/lsb-build/stub_libs/libc_nonshared.c:88: undefined reference to `__stack_smash_handler'
lsb-build-i386/libc_nonshared.a(libc_nonshared.o): In function `__libc_csu_fini':
/var/tmp/portage/net-www/nspluginwrapper-0.9.91.4/work/nspluginwrapper-0.9.91.4/lsb-build/stub_libs/libc_nonshared.c:92: undefined reference to `__guard'
/var/tmp/portage/net-www/nspluginwrapper-0.9.91.4/work/nspluginwrapper-0.9.91.4/lsb-build/stub_libs/libc_nonshared.c:100: undefined reference to `__guard'
/var/tmp/portage/net-www/nspluginwrapper-0.9.91.4/work/nspluginwrapper-0.9.91.4/lsb-build/stub_libs/libc_nonshared.c:100: undefined reference to `__stack_smash_handler'
collect2: ld returned 1 exit status
make: *** [npviewer.bin] Error 1


emerge --info:

Portage 2.1.2.7 (hardened/amd64/multilib, gcc-3.4.6, glibc-2.5-r3, 2.6.20-hardened-r2 x86_64)
=================================================================
System uname: 2.6.20-hardened-r2 x86_64 Intel(R) Core(TM)2 CPU         T7200  @ 2.00GHz
Gentoo Base System release 1.12.9
Timestamp of tree: Sat, 30 Jun 2007 22:20:01 +0000
dev-java/java-config: 1.3.7, 2.0.32
dev-lang/python:     2.4.4-r4
dev-python/pycrypto: 2.0.1-r5
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, 1.10
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.20-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=nocona -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/splash /etc/terminfo"
CXXFLAGS="-O2 -march=nocona -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--alphabetical"
FEATURES="autoconfig ccache cvs distlocks metadata-transfer parallel-fetch sandbox sfperms strict userfetch"
GENTOO_MIRRORS="http://gentoo.osuosl.org"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
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 --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X Xaw3d a52 aac aalib acl acpi aim alsa amd64 ao audiofile avahi bash-completion bcmath berkdb bluetooth bonobo bzip2 cairo caps cddb cdinstall cdparanoia cdr clamav cracklib crypt cups curl curlwrappers dbase dbm dbus dbx dga dri dts dv dvd dvdr dvdread eds encode esd evo exif expat fam fbcon ffmpeg firefox flac flatfile foomaticdb freetds ftp gb gcj gd geoip ggi gif gnome gnutls gphoto2 gpm gps gstreamer gtk gtk2 gtkhtml hal hardened iconv icq ieee1394 imagemagick imap imlib inifile innodb iodbc ipod irda jabber java javascript jpeg jpeg2k kerberos krb4 ldap libgda libnotify libwww lm_sensors mad maildir matroska mbox mcal midi mime mng mozilla mp3 mpeg mplayer msn mssql multilib musicbrainz mysql ncurses nls nntp nocd nptl nsplugin odbc ofx ogg opengl oscar pam pcmcia pcre pda pdf pic png posix ppds python quicktime rdesktop readline samba sasl scanner sdl sndfile sockets sound sox speex spell ssl startup-notification svg syslog sysvipc tcpd theora tiff truetype unicode usb vcd vorbis wifi wmf wxwindows x264 xcomposite xine xinerama xinetd xml xorg xosd xpm xsl xv xvid yahoo zlib" ALSA_CARDS="intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="i810 fbdev vesa"
Unset:  CTARGET, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 5 Matthew Kasa (RETIRED) gentoo-dev 2007-07-11 21:47:40 UTC
Assigning to hardened so bug-wranglers won't waste more time.
Comment 6 Matthew Kasa (RETIRED) gentoo-dev 2007-08-20 01:59:14 UTC
Forcing -fno-stack-protector -fno-stack-protector-all -fno-pie doesn't help.

Even the current nspluginwrapper-0.9.91.4 ebuild with a vanilla gcc profile:

/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(cp-demangle.o): In function `d_print_expr_op':
(.text+0x4b33): undefined reference to `__guard'
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(cp-demangle.o): In function `d_print_expr_op':
(.text+0x4b4f): undefined reference to `__guard'
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(cp-demangle.o): In function `d_print_expr_op':
(.text+0x4b68): undefined reference to `__stack_smash_handler'
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(cp-demangle.o): In function `__cxa_demangle':
(.text+0x4bf0): undefined reference to `__guard'
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(cp-demangle.o): In function `__cxa_demangle':
(.text+0x4e7b): undefined reference to `__guard'
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(cp-demangle.o): In function `__cxa_demangle':
(.text+0x4e9b): undefined reference to `__stack_smash_handler'
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(eh_type.o): In function `__cxa_current_exception_type':
(.text.__cxa_current_exception_type+0x14): undefined reference to `__guard'
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(eh_type.o): In function `__cxa_current_exception_type':
(.text.__cxa_current_exception_type+0x33): undefined reference to `__guard'
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/32/libsupc++.a(eh_type.o): In function `__cxa_current_exception_type':
(.text.__cxa_current_exception_type+0x4c): undefined reference to `__stack_smash_handler'
collect2: ld returned 1 exit status
make: *** [npviewer.bin] Error 1
Comment 7 solar (RETIRED) gentoo-dev 2007-08-20 05:16:45 UTC
might want to provide stub functions then. (see klibc)
Comment 8 Matthew Kasa (RETIRED) gentoo-dev 2007-08-21 03:57:42 UTC
Created attachment 128736 [details, diff]
Patch adding SSP function stubs stolen from one of solar's patches
Comment 9 Matthew Kasa (RETIRED) gentoo-dev 2007-08-21 04:01:06 UTC
Created attachment 128737 [details, diff]
Patch to nspluginwrapper-0.9.91.4.ebuild applying the patch.

This "fixes" it for me, nspluginwrapper now builds and lets me use netscape-flash in a 64-bit firefox on an amd64 system running a hardened profile.  I don't think this is a real fix per se, but nspluginwrapper isn't something I'd really expect to be hardened anyways ;)
Comment 10 Pacho Ramos gentoo-dev 2010-06-20 10:07:50 UTC
Still valid with 1.3.0?
Comment 11 Magnus Granberg gentoo-dev 2011-06-08 22:29:28 UTC
We not longer support =<gcc-3.4.6 on hardened so update to newer toolchain.