Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 310655 - =www-client/chromium-5.0.356.0 doesn't compile/link
Summary: =www-client/chromium-5.0.356.0 doesn't compile/link
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-22 07:07 UTC by Guillaume BINET
Modified: 2010-03-22 08:29 UTC (History)
1 user (show)

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


Attachments
The build log (buildlog.tar.bz2,68.62 KB, application/bzip2)
2010-03-22 07:10 UTC, Guillaume BINET
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Guillaume BINET 2010-03-22 07:07:06 UTC
See the full building log attached to this bug & emerge --info.

Reproducible: Always

Steps to Reproduce:
1. unmask www-client/chrome
2. compile the 5.0.356.0 version
3.

Actual Results:  
(See the build full build log, this seems to be related to protobuf as the first error I see if I am not mistaken is this : )
  rm -f out/Release/obj.target/base/liblinux_versioninfo.a && x86_64-pc-linux-gnu-ar rc out/Release/obj.target/base/liblinux_versioninfo.a out/Release/obj.target/linux_versioninfo/base/file_version_info_linux.o && ranlib out/Release/obj.target/base/liblinux_versioninfo.a
  x86_64-pc-linux-gnu-g++ -march=native -O2 -pipe -msse4.1 -ftree-vectorize -march=native -O2 -pipe -msse4.1 -ftree-vectorize -pthread -fno-exceptions -Wall -Wno-unused-parameter -Wno-missing-field-initializers -D_FILE_OFFSET_BITS=64 -fvisibility=hidden -fno-strict-aliasing -D_REENTRANT -pthread -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng12 -O2 -fno-ident -fdata-sections -ffunction-sections -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -DCHROMIUM_BUILD -DENABLE_GPU=1 -D__OMX_EXPORTS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND -I. -Ithird_party/openmax/il -Iout/Release/obj/gen/openmax -MMD -MF out/Release/.deps/out/Release/obj.target/omx_wrapper/media/omx/omx_codec.o.d.tmp -c -o out/Release/obj.target/omx_wrapper/media/omx/omx_codec.o media/omx/omx_codec.cc
out/Release/obj.host/protoc/third_party/protobuf2/src/src/google/protobuf/compiler/code_generator.o: In function `google::protobuf::compiler::ParseGeneratorParameter(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >*)':
code_generator.cc:(.text._ZN6google8protobuf8compiler23ParseGeneratorParameterERKSsPSt6vectorISt4pairISsSsESaIS6_EE+0x37): undefined reference to `google::protobuf::SplitStringUsing(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*)'


Expected Results:  
Should compile.

Portage 2.1.8.3 (default/linux/amd64/10.0/desktop, gcc-4.4.3, glibc-2.11-r1, 2.6.33-gentoo x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.33-gentoo-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T9800_@_2.93GHz-with-gentoo-2.0.1
Timestamp of tree: Mon, 22 Mar 2010 05:45:01 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.1_p2
dev-java/java-config: 2.1.10
dev-lang/python:     2.6.5, 3.1.1-r1
dev-python/pycrypto: 2.1.0
dev-util/ccache:     2.4-r8
dev-util/cmake:      2.8.1
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.6.0-r1
sys-apps/sandbox:    2.2
sys-devel/autoconf:  2.13, 2.65
sys-devel/automake:  1.8.5-r3, 1.9.6-r2, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1
sys-devel/gcc:       4.4.3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.33
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe -msse4.1 -ftree-vectorize"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe -msse4.1 -ftree-vectorize"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests ccache collision-protect cvs distlocks fixpackages news parallel-fetch preserved-rebuild protect-owned sandbox sfperms strict unemerge-orphans unmerge-logs unmerge-orphans userfetch userpriv"
GENTOO_MIRRORS="http://mirror.ovh.net/gentoo-distfiles/ "
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en fr ja en_US fr_FR"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/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="/usr/local/portage/layman/mpd /usr/local/portage/layman/sunrise /usr/local/portage/layman/berkano /usr/local/portage/layman/jokey /usr/local/portage/layman/qting-edge /usr/local/portage/layman/kde /usr/local/portage/layman/science /usr/local/portage/layman/gamerlay /usr/local/portage/gbin /usr/local/portage/gfxboot"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X Xaw3d a52 aac aalib acl acpi alsa amd64 aotuv ares asf avahi bash-completion berkdb bluetooth branding bzip2 cairo cdaudio cdr cjk cli consolekit cracklib crypt cups cxx dbus directfb divx4linux dri dts dv dvd dvdr dvdread eds emboss emul-linux-x86 encode esd exif fam fbsplash ffmpeg firefox flac fortran gcj gd gdbm geoip gif glitz gpm gstreamer gtk gtk2 hal htmlhandbook http i8x0 iconv idn ieee1394 imagemagick jack java java6 javascript jfs joystick jpeg jpeg2k kde kdexdeltas kipi laptop libcaca libnotify lzma mad midi mikmod mmap mmx mng modplug modules mp3 mp4 mpeg mplayer mudflap multilib musepack musicbrainz ncurses networkmanager nls nptl nptlonly nsplugin ntfs obex ogg oggvorbis openexr opengl openmp pam pch pcmcia pcre pdf perl png policykit postgres ppds pppd python qt3support qt4 rdesktop readline reflection reiserfs samba sasl scanner sdl session socks5 speex spell spl sse sse2 sse3 ssl startup-notification svg sysfs tcpd theora threads thunar tiff truetype unicode usb usepackagedmakefiles v4l v4l2 vcd vhosts vorbis wavpack wifi wmf x264 xcb xcomposite xine xinerama xorg xpm xulrunner xv xvid xvmc zeroconf 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" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="canon" ELIBC="glibc" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en fr ja en_US fr_FR" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="intel nvidia" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Guillaume BINET 2010-03-22 07:10:57 UTC
Created attachment 224631 [details]
The build log

(compressed as it doesn't fit the bugzilla limit)
Comment 2 Doktor Notor 2010-03-22 07:41:42 UTC
Well, on a quick look, the above snippet in Comment #0 looks like a typical result of mixing gcc versions for some dependencies (i.e., improper gcc upgrade). Also, try C[XX]FLAGS="-march=native -O2 -pipe" (-ftree-vectorize is known for breaking things).
Comment 3 Guillaume BINET 2010-03-22 08:22:55 UTC
(In reply to comment #2)
Thanks a lot for the quick answer !
yes, indeed -ftree-vectorize was the culprit, I just removed it and it compiles fine.

Now I try to figure out :
How is it possible that unrolling loops in a compiler creates a linking error ?
A nasty compiler bug ? Should we forward this to gcc team ?
Comment 4 Doktor Notor 2010-03-22 08:29:40 UTC
(In reply to comment #3)
> A nasty compiler bug ? Should we forward this to gcc team ?

Well, if you have a simple reduced test case, then you could... I don't really think they'd be enthusiastic about digging into such huge thing like chromium :)

Other than that, all I can say that -ftree-vectorize did bite me badly quite a couple of times, I'd avoid it.