Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 631452 - www-client/chromium-62.0.3202.18 fails to compile "error: #error This file requires compiler and library support for the ISO C++ 2017 standard."
Summary: www-client/chromium-62.0.3202.18 fails to compile "error: #error This file re...
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Chromium Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-09-19 22:54 UTC by Steffen Hau
Modified: 2018-07-29 19:19 UTC (History)
6 users (show)

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


Attachments
chromium-62.0.3202.18 build.log (www-client_chromium-62.0.3202.18-build.log.xz,132.73 KB, application/x-xz)
2017-09-19 22:54 UTC, Steffen Hau
Details
Patch derived from upstream's fix (crc32c-gnu++17fix.patch,1.08 KB, patch)
2017-09-24 21:41 UTC, bluebird
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Steffen Hau 2017-09-19 22:54:49 UTC
Created attachment 495476 [details]
chromium-62.0.3202.18 build.log

starting with www-client/chromium-62.0.3202.18 I get the following error:
x86_64-pc-linux-gnu-g++ -MMD -MF obj/third_party/crc32c/crc32c/crc32c.o.d -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DNO_TCMALLOC -DDISABLE_NACL -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DHAVE_MM_PREFETCH=1 -DHAVE_SSE42=1 -DHAVE_BUILTIN_PREFETCH=1 -DHAVE_STRONG_GETAUXVAL=1 -I../.. -Igen -I../../third_party/crc32c/config -I../../third_party/crc32c/src/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -pthread -m64 -march=x86-64 -Wall -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-unused-parameter -O2 -fno-ident -fdata-sections -ffunction-sections -fomit-frame-pointer -g0 -fvisibility=hidden -std=gnu++14 -Wno-narrowing -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -march=native -O2 -pipe -flto=5 -fuse-linker-plugin -fno-delete-null-pointer-checks -flifetime-dse=1 -fno-lto -fno-delete-null-pointer-checks -c ../../third_party/crc32c/src/src/crc32c.cc -o obj/third_party/crc32c/crc32c/crc32c.o
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/g++-v7/string_view:39:0,
                 from ../../third_party/crc32c/src/include/crc32c/crc32c.h:41,
                 from ../../third_party/crc32c/src/src/crc32c.cc:5:
/usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include/g++-v7/bits/c++17_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2017 standard. This support must be enabled with the -std=c++17 or -std=gnu++17 compiler options.
 #error This file requires compiler and library support \
  ^~~~~
In file included from ../../third_party/crc32c/src/src/crc32c.cc:5:0:
../../third_party/crc32c/src/include/crc32c/crc32c.h:44:35: error: ‘string_view’ in namespace ‘std’ does not name a type
 inline uint32_t Crc32c(const std::string_view& string_view) {
                                   ^~~~~~~~~~~
../../third_party/crc32c/src/include/crc32c/crc32c.h: In function ‘uint32_t crc32c::Crc32c(const int&)’:
../../third_party/crc32c/src/include/crc32c/crc32c.h:45:62: error: request for member ‘data’ in ‘string_view’, which is of non-class type ‘const int’
   return Crc32c(reinterpret_cast<const uint8_t*>(string_view.data()),
                                                              ^~~~
../../third_party/crc32c/src/include/crc32c/crc32c.h:46:29: error: request for member ‘size’ in ‘string_view’, which is of non-class type ‘const int’
                 string_view.size());
                             ^~~~


Perhaps this was introduced with https://chromium.googlesource.com/chromium/src.git/+/54619c78b350b5d2f0cfad182b90be613ec2042c%5E%21/


build.log is attached.

emerge --info chromium
Portage 2.3.8 (python 3.5.3-final-0, default/linux/amd64/13.0/systemd, gcc-7.2.0, glibc-2.25-r5, 4.12.9-HAUIHAU x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.12.9-HAUIHAU-x86_64-Intel-R-_Core-TM-_i7-6600U_CPU_@_2.60GHz-with-gentoo-2.4.1
KiB Mem:    20450804 total,    372252 free
KiB Swap:   20971516 total,  20168700 free
Timestamp of repository gentoo: Tue, 19 Sep 2017 19:00:01 +0000
Head commit of repository gentoo: 2dc97085cd3df7a317d09c7434d3511972f5191e
sh bash 4.4_p12
ld GNU gold (Gentoo 2.29 p1.0 2.29) 1.14
app-shells/bash:          4.4_p12::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.24.2::gentoo
dev-lang/python:          2.7.14::gentoo, 3.5.3::gentoo
dev-util/cmake:           3.9.2::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/sandbox:         2.10-r4::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.15.1-r1::gentoo
sys-devel/binutils:       2.29::gentoo
sys-devel/gcc:            7.2.0::gentoo
sys-devel/gcc-config:     1.8-r1::gentoo
sys-devel/libtool:        2.4.6-r4::gentoo
sys-devel/make:           4.2.1-r1::gentoo
sys-kernel/linux-headers: 4.13::gentoo (virtual/os-headers)
sys-libs/glibc:           2.25-r5::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

hauihau
    location: /usr/local/portage/hauihau
    masters: gentoo
    priority: 0

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O3 -pipe -flto=5 -fuse-linker-plugin"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /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=native -O3 -pipe -flto=5 -fuse-linker-plugin -fno-delete-null-pointer-checks -flifetime-dse=1"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--autounmask=n --keep-going=y --quiet-build=y --quiet-fail=y --with-bdeps=y"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fakeroot fixlafiles merge-sync metadata-transfer multilib-strict news parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="de_DE.utf8"
LC_ALL="de_DE.utf8"
LDFLAGS="-march=native -O3 -pipe -flto=5 -fuse-linker-plugin -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -Wl,--gc-sections -Wl,--icf=safe"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/home/gentoo/tmp/"
USE="X a52 aac aalib acl alsa amd64 avx avx2 bash-completion berkdb bluetooth bluray branding bzip2 cairo caps cdda cddb cdparanoia cdr cli cracklib crypt cups curl cxx dbus dga dri dts dv dvd egl encode exif ffmpeg flac fontconfig fortran ftp gd gdbm gif gmp gstreamer iconv icu imagemagick imlib ipv6 jpeg jpeg2k lame latex libcaca libnotify libsamplerate lzma lzo mad matroska mmx mmxext mng modules mp3 mpeg mtp multilib musepack ncurses networkmanager nls nptl nsplugin ogg openal opengl openmp pam pcre pdf png policykit pulseaudio qt5 quicktime readline seccomp session sndfile spell sse sse2 sse3 sse4 sse4_1 sse4_2 ssl ssse3 svg syslog systemd tcpd theora threads tiff truetype udev unicode usb v4l vaapi vcd vim-syntax vorbis wavpack wayland webkit x264 xattr xcb xcomposite xinerama xml xmp xorg xosd xpm xv xvid zlib" ABI_X86="64" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd 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 cgi cgid 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" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="libinput" KERNEL="linux" L10N="de" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python3_5" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby24" USERLAND="GNU" VIDEO_CARDS="intel i965" 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:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

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

www-client/chromium-61.0.3163.79::gentoo was built with the following:
USE="cups custom-cflags kerberos (pic) proprietary-codecs pulseaudio suid system-ffmpeg system-icu widevine -component-build -gnome-keyring -hangouts (-neon) (-selinux) (-system-libvpx) (-tcmalloc) -test" ABI_X86="(64)" L10N="de -am -ar -bg -bn -ca -cs -da -el -en-GB -es -es-419 -et -fa -fi -fil -fr -gu -he -hi -hr -hu -id -it -ja -kn -ko -lt -lv -ml -mr -ms -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=native -O2 -pipe -flto=5 -fuse-linker-plugin -fno-lto"
CXXFLAGS="-march=native -O2 -pipe -flto=5 -fuse-linker-plugin -fno-delete-null-pointer-checks -flifetime-dse=1 -fno-lto -fno-delete-null-pointer-checks"
LDFLAGS="-march=native -O2 -pipe -flto=5 -fuse-linker-plugin -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -Wl,--gc-sections -Wl,--icf=safe -fno-lto"
Comment 1 cyrillic 2017-09-20 01:00:19 UTC
Me too ...

I get the same error with llvm/clang-6 and www-client/chromium-63.0.3213.3

I am using the same c++ library from gcc-7.2.0
Comment 2 Mike Auty (RETIRED) gentoo-dev 2017-09-20 18:21:56 UTC
Sounds like a duplicate of bug 626970.
Comment 3 Steffen Hau 2017-09-21 06:42:17 UTC
nope, that's another issue which is fixed in chromiium-62.
Comment 4 bluebird 2017-09-24 21:41:28 UTC
Created attachment 496330 [details, diff]
Patch derived from upstream's fix

The crc32c project already fixed it [1], the chromium guys just need to update their copy of the code.

I've added a patch you can drop into /etc/portage/patches/www-client/chromium, with this I managed to compile www-client/chromium-62.0.3202.18 using sys-devel/gcc-7.2.0.

[1] https://github.com/google/crc32c/commit/d0f929a5
Comment 5 Søren Dalby Larsen 2017-09-26 06:29:49 UTC
This works, thank you for sharing.