Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 352457 - www-client/chromium-10.0.642.2-r1 undefined reference with -Os
Summary: www-client/chromium-10.0.642.2-r1 undefined reference with -Os
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Chromium Project
URL: http://groups.google.com/a/chromium.o...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-22 23:32 UTC by Francois Chenier
Modified: 2011-10-08 17:38 UTC (History)
1 user (show)

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


Attachments
build log file (build.log.bz2,197.15 KB, application/octet-stream)
2011-01-22 23:40 UTC, Francois Chenier
Details
cave (paludis) info for www-client/chromium (cave.info,15.64 KB, text/plain)
2011-01-24 10:35 UTC, Scott Thomson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Francois Chenier 2011-01-22 23:32:18 UTC
Linker error at the very end of compilation

Reproducible: Always
Comment 1 Francois Chenier 2011-01-22 23:34:06 UTC
Portage 2.1.9.35 (default/linux/amd64/10.0, gcc-4.5.2, glibc-2.12.2-r0, 2.6.37! x86_64)
=================================================================
System uname: Linux-2.6.37!-x86_64-Intel-R-_Core-TM-2_Duo_CPU_P8400_@_2.26GHz-with-gentoo-2.0.1
Timestamp of tree: Sat, 22 Jan 2011 18:45:03 +0000
app-shells/bash:     4.1_p9
dev-java/java-config: 2.1.11-r3
dev-lang/python:     2.7.1, 3.1.3
dev-util/cmake:      2.8.3-r1
sys-apps/baselayout: 2.0.1-r1
sys-apps/openrc:     0.7.0
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.68
sys-devel/automake:  1.9.6-r3, 1.11.1
sys-devel/binutils:  2.21
sys-devel/gcc:       4.5.2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.4-r1
sys-devel/make:      3.82
virtual/os-headers:  2.6.36.1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -Os -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo"
CXXFLAGS="-march=nocona -Os -pipe"
DISTDIR="/home/Linux/Src"
FEATURES="assume-digests binpkg-logs buildpkg distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_GB"
LC_ALL="en_GB"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en"
MAKEOPTS="-j3"
PKGDIR="/home/Linux"
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/Linux/Overlay"
SYNC="rsync://rsync.au.gentoo.org/gentoo-portage"
USE="X acl alsa amd64 berkdb bzip2 cli cracklib crypt cups cxx dbus dri fortran gdbm gpm iconv mmx modules mudflap multilib ncurses nptl nptlonly ntplonly opengl openmp pam pcre perl pppd python readline session sse sse2 ssl sysfs tcpd threads truetype unicode xcomposite 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_default authz_default authz_host / autoindex cache deflate dir disk_cache env expires ext_filter file_cache / filter headers include info mem_cache mime mime_magic negotiation / rewrite setenvif speling status vhost_alias unique_id" APACHE2_MPMS="worker" 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="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" SANE_BACKENDS="plustek" USERLAND="GNU" VIDEO_CARDS="nvidia svga" 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, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 Dror Levin (RETIRED) gentoo-dev 2011-01-22 23:38:19 UTC
I just built it fine on amd64. Please attach full build.log.
Comment 3 Francois Chenier 2011-01-22 23:40:42 UTC
Created attachment 260526 [details]
build log file
Comment 4 Mike Gilbert gentoo-dev 2011-01-23 00:18:15 UTC
(In reply to comment #3)
> Created an attachment (id=260526) [details]
> build log file
> 

If you are going to post a tar file, please name it appropriately.

Also, there is no need for tar when posting a single file.
Comment 5 Francois Chenier 2011-01-23 01:21:59 UTC
> If you are going to post a tar file, please name it appropriately.
Sorry, it`s a .tar.bz2 file

> Also, there is no need for tar when posting a single file.
Gentoo limits uploads size to 1Meg. Uncompressed the size of this file is twice the maximum limit.
Comment 6 Francois Chenier 2011-01-23 01:28:53 UTC
> If you are going to post a tar file, please name it appropriately.
Sorry, it`s a .tar.bz2 file

> Also, there is no need for tar when posting a single file.
Gentoo limits uploads size to 1Meg. Uncompressed the size of this file is twice the maximum limit.
Comment 7 Mike Gilbert gentoo-dev 2011-01-23 01:32:18 UTC
(In reply to comment #5)
> > Also, there is no need for tar when posting a single file.
> Gentoo limits uploads size to 1Meg. Uncompressed the size of this file is twice
> the maximum limit.
> 

Right. I said *tar* was unnecessary; you can compress single files without tar. No worries though. :)

This is the error from the log:

out/Release/obj.target/chrome/libdebugger.a(devtools_remote_listen_socket.o): In function `DevToolsRemoteListenSocket::DispatchField()':
devtools_remote_listen_socket.cc:(.text._ZN26DevToolsRemoteListenSocket13DispatchFieldEv+0xa0): undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_compare(unsigned long, unsigned long)'
collect2: ld returned 1 exit status
make: *** [out/Release/chrome] Error 1

Looks pretty strange; I'm not sure where that _S_compare symbol is supposed to come from.
Comment 8 Francois Chenier 2011-01-23 05:41:00 UTC
> Looks pretty strange; I'm not sure where that _S_compare symbol is supposed to
> come from.

This symbol is defined in /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/ext/vstring_util.h

<snip>
static int
      _S_compare(size_type __n1, size_type __n2)
      {
	const difference_type __d = difference_type(__n1 - __n2);

	if (__d > __numeric_traits_integer<int>::__max)
	  return __numeric_traits_integer<int>::__max;
	else if (__d < __numeric_traits_integer<int>::__min)
	  return __numeric_traits_integer<int>::__min;
	else
	  return int(__d);
      } 
<snip>

Hope this may help!
Comment 9 Francois Chenier 2011-01-23 05:42:41 UTC
Oups forget my last comment.
Comment 10 Mike Gilbert gentoo-dev 2011-01-23 06:50:51 UTC
Yeah, I'm guessing it is supposed to be part of the C++ standard library?

The C++ class I took for my CS degree didn't really get into C++ linker stuff. :)
Comment 11 Scott Thomson 2011-01-24 10:35:31 UTC
Created attachment 260577 [details]
cave (paludis) info for www-client/chromium

I get exactly same error on amd64, extra info attached
Comment 12 Mike Gilbert gentoo-dev 2011-01-24 16:13:37 UTC
Just to point out some commonalities:
1. -Os in CXXFLAGS
2. It looks like you are running ~amd64. I'm not used to reading paludis info, but several system packages are ~amd64 versions.
Comment 13 Mike Gilbert gentoo-dev 2011-01-24 19:10:50 UTC
I am able to reproduce the error locally by changing my CXXFLAGS from "-O2 -pipe -march=native" to "-Os -pipe -march=native". I would say that -Os is the problem here.

I'm not sure if the gcc version has any effect; I am also running 4.5.2.
Comment 14 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2011-01-24 20:56:10 UTC
Confirmed, -Os and amd64 are required to repro (doesn't happen on x86 for me).

I asked upstream for advice, see http://groups.google.com/a/chromium.org/group/chromium-dev/browse_thread/thread/5173620791796e1e#
Comment 15 Francois Chenier 2011-01-24 22:09:09 UTC
(In reply to comment #14)
Another confirmation, amd64 without -Os flag compile fine now.
Comment 16 Scott Thomson 2011-01-27 18:26:28 UTC
Problem still exists with www-client/chromium-10.0.648.6
Comment 17 Alessandro Di Marco 2011-01-28 19:15:52 UTC
(In reply to comment #16)
> Problem still exists with www-client/chromium-10.0.648.6
> 

Same problem with the today's SVN version (9999)
Comment 18 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2011-01-30 17:08:59 UTC
Should be fixed now, thanks for reporting.
Comment 19 Richard Freeman gentoo-dev 2011-10-08 10:59:40 UTC
As odd as this may seem with replace-flags, I'm getting this error now on stable amd64.  I suddenly am getting it on chromium versions that used to compile file, so it seems likely to be a recent change to one of the dependencies/ebuilds/portage/etc.

My emerge --info (I get the same error as before if I replace -O2 with -Os in my /etc/portage/env/www-client/chromium, and it compiles fine with the flags at the very bottom of this dump):


Portage 2.1.10.11 (default/linux/amd64/10.0/desktop, gcc-4.5.3, glibc-2.12.2-r0, 2.6.39-gentoo-r3-rf108 x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.39-gentoo-r3-rf108-x86_64-AMD_Phenom-tm-_II_X4_965_Processor-with-gentoo-2.0.3
Timestamp of tree: Sat, 08 Oct 2011 04:45:01 +0000
app-shells/bash:          4.1_p9
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.1-r1
dev-util/cmake:           2.8.4-r1
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.0.3
sys-apps/openrc:          0.8.3-r1
sys-apps/sandbox:         2.4
sys-devel/autoconf:       2.13::<unknown repository>, 2.68
sys-devel/automake:       1.9.6-r3, 1.10.3::<unknown repository>, 1.11.1
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.5.3-r1
sys-devel/gcc-config:     1.4.1-r1
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r1
sys-kernel/linux-headers: 2.6.36.1 (virtual/os-headers)
sys-libs/glibc:           2.12.2::<unknown repository>
Repositories: gentoo aidecoe sunrise portage-rich
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=amdfam10 -Os -pipe -frename-registers -fweb -freorder-blocks -freorder-blocks-and-partition -combine -funit-at-a-time -ftree-pre -fgcse-sm -fgcse-las -fgcse-after-reload -fmerge-all-constants -ftree-vectorize -ftree-parallelize-loops=4 -mabm -msse4a"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /home /opt/zetagrid /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /var/bind /var/freenet /var/lib/hsqldb /var/www"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=amdfam10 -Os -pipe -frename-registers -fweb -freorder-blocks -funit-at-a-time -ftree-pre -fgcse-sm -fgcse-las -fgcse-after-reload -fmerge-all-constants -ftree-vectorize -ftree-vectorize -ftree-parallelize-loops=4 -mabm -msse4a"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs buildpkg distlocks ebuild-locks fixlafiles fixpackages multilib-strict news nostrip parallel-fetch protect-owned sandbox sfperms sign strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox"
FFLAGS=""
GENTOO_MIRRORS="http://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://gentoo.netnitco.net http://gentoo.mirrors.tds.net/gentoo http://gentoo.mirrors.easynews.com/linux/gentoo/ http://212.219.56.134/sites/www.ibiblio.org/gentoo/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--as-needed"
LINGUAS="en"
MAKEOPTS="-j5"
PKGDIR="/var/packages"
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="/var/lib/layman/aidecoe /var/lib/layman/sunrise /usr/local/portage-rich"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="3dnow APACHE2_MODULES: X a52 aac acl acpi actions aim alias alsa amd64 apache2 auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex bash-completion berkdb branding bzip2 cache cairo cdda cdparanoia cdr clamav clamd cleartype cli consolekit corefonts cracklib crypt css ctype cups cxx dav dav_fs dav_lock dba dbd dbus deflate dir disk_cache dri dts dv dvb dvd dvdr dvdread emboss encode env exif expires ext_filter fam ffmpeg file_cache filter flac font-server fortran gd gdbm gif gimpprint glsa glut gmail gnutls gpm gtk hal headers iconv id3 ident ieee1394 imagemap imap include info innodb inquisitio ipv6 ivtv jabber java jpeg jpeg2k kdehiddenvisibility kerberos lame latex lcms libnotify libpaludis lm_sensors lock log_config logio logrotate mad maildir mem_cache memlimit mime mime_magic mmx mng modules mozsvg mp3 mp4 mp4live mpeg mplayer mpm-worker msn mudflap multilib musicbrainz mysql nagios-dns nagios-ntp nagios-ssh ncurses negotiation nls nodrm nptl nptlonly nsplugin ntlm oav ogg opengl openmp paludis pam pango pcre pdf perlsuid png posix ppds pppd proxy proxy_ajp proxy_balancer proxy_connect proxy_http qa qt3support readline replaygain replytolist rewrite samba sasl sdl session setenvif smime so sox speex speling spell sse sse2 ssl startup-notification status svg sysfs tcpd tetex theora threads thunar tiff timidity transcode truetype type1 udev unicode unique_id usb userdir usertrack vhost_alias vim-syntax visibility vnc vorbis vpx x264 xattr xcb xine xml xorg xulrunner xv xvid xvmc 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 auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan stage tables krita karbon braindump" CAMERAS="canon" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" DRACUT_MODULES="lvm mdraid" 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" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="vga radeon" 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, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

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

www-client/chromium-14.0.835.202 was built with the following:
USE="cups kerberos (multilib) -bindist -gnome -gnome-keyring -test" LINGUAS="-am -ar -bg -bn -ca -cs -da -de -el -en_GB -es -es_LA -et -fa -fi -fil -fr -gu -he -hi -hr -hu -id -it -ja -kn -ko -lt -lv -ml -mr -nb -nl -pl -pt_BR -pt_PT -ro -ru -sk -sl -sr -sv -sw -ta -te -th -tr -uk -vi -zh_CN -zh_TW"
CFLAGS="-march=amdfam10 -O2 -pipe -frename-registers -fweb"
CXXFLAGS="-march=amdfam10 -O2 -pipe -frename-registers -fweb"
Comment 20 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2011-10-08 17:38:05 UTC
(In reply to comment #19)
> As odd as this may seem with replace-flags, I'm getting this error now on
> stable amd64.

Could you open a new bug? It might be something new, and it's going to be easier to discuss and track things in a fresh bug (we can always dupe it against this if needed).

> I suddenly am getting it on chromium versions that used to
> compile file, so it seems likely to be a recent change to one of the
> dependencies/ebuilds/portage/etc.
> 
> My emerge --info (I get the same error as before if I replace -O2 with -Os in
> my /etc/portage/env/www-client/chromium, and it compiles fine with the flags at
> the very bottom of this dump):

Please open a new bug and attach full build log. By the way, -fweb makes me quite suspicious.