Attempting to build www-client/chromium-29.0.1547.57 on ARMv7 results in several undefined references during the linking process. Some of these problems can be resolved by modifying the ebuild to set -Darmv7=1 and -Darm_neon=1. However, the following undefined references remain: out/Release/obj.target/third_party/WebKit/Source/core/libwebcore_platform.a(out/Release/obj.target/third_party/WebKit/Source/core/../../../../webcore_platform/third_party/WebKit/Source/core/platform/graphics/filters/FELighting.o):FELighting.cpp:function WebCore::FELighting::drawLighting(WTF::Uint8ClampedArray*, int, int): error: undefined reference to 'WebCore::FELighting::platformApplyNeonWorker(WebCore::FELightingPaintingDataForNeon*)' out/Release/obj.target/third_party/WebKit/Source/core/libwebcore_platform.a(out/Release/obj.target/third_party/WebKit/Source/core/../../../../webcore_platform/third_party/WebKit/Source/core/platform/graphics/filters/FELighting.o):FELighting.cpp:function WebCore::FELighting::drawLighting(WTF::Uint8ClampedArray*, int, int): error: undefined reference to 'WebCore::feLightingConstantsForNeon()' out/Release/obj.target/third_party/WebKit/Source/core/libwebcore_platform.a(out/Release/obj.target/third_party/WebKit/Source/core/../../../../webcore_platform/third_party/WebKit/Source/core/platform/graphics/filters/FELighting.o):FELighting.cpp:function WebCore::FELighting::drawLighting(WTF::Uint8ClampedArray*, int, int): error: undefined reference to 'neonDrawLighting' out/Release/obj.target/third_party/WebKit/Source/core/libwebcore_platform.a(out/Release/obj.target/third_party/WebKit/Source/core/../../../../webcore_platform/third_party/WebKit/Source/core/platform/graphics/filters/FELighting.o):FELighting.cpp:function WebCore::FELighting::drawLighting(WTF::Uint8ClampedArray*, int, int): error: undefined reference to 'WebCore::FELighting::getPowerCoefficients(float)' out/Release/obj.target/third_party/WebKit/Source/core/libwebcore_platform.a(out/Release/obj.target/third_party/WebKit/Source/core/../../../../webcore_platform/third_party/WebKit/Source/core/platform/graphics/filters/FELighting.o):FELighting.cpp:function WebCore::FELighting::drawLighting(WTF::Uint8ClampedArray*, int, int): error: undefined reference to 'WebCore::FELighting::getPowerCoefficients(float)' collect2: error: ld returned 1 exit status distcc[31035] ERROR: compile (null) on localhost failed make: *** [out/Release/chrome] Error 1 Portage 2.1.12.2 (default/linux/arm/13.0/armv7a, gcc-4.7.3, unavailable, 3.1.10 armv7l) ================================================================= System Settings ================================================================= System uname: Linux-3.1.10-armv7l-ARMv7_Processor_rev_9_-v7l-with-gentoo-2.2 KiB Mem: 1003116 total, 731180 free KiB Swap: 1023984 total, 1022744 free Timestamp of tree: Fri, 23 Aug 2013 10:00:01 +0000 ld GNU gold (GNU Binutils 2.23.2) 1.11 distcc 3.1 armv7a-hardfloat-linux-gnueabi [enabled] app-shells/bash: 4.2_p45 dev-lang/python: 2.7.5, 3.2.5-r1 dev-util/cmake: 2.8.10.2-r2 dev-util/pkgconfig: 0.28 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.11.8 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.12.6 sys-devel/binutils: 2.23.2 sys-devel/gcc: 4.7.3 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82-r4 sys-kernel/linux-headers: 3.7 (virtual/os-headers) sys-libs/glibc: 2.17 Repositories: gentoo ACCEPT_KEYWORDS="arm" ACCEPT_LICENSE="* -@EULA" CBUILD="armv7a-hardfloat-linux-gnueabi" CFLAGS="-Ofast -pipe -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard" CHOST="armv7a-hardfloat-linux-gnueabi" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/terminfo" CXXFLAGS="-Ofast -pipe -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard" DISTDIR="/usr/local/portage/distfiles" EMERGE_DEFAULT_OPTS="--nospinner --unordered-display --usepkg --buildpkg-exclude 'sys-kernel/* virtual/* x11-proto/*'" FCFLAGS="-O2 -pipe -march=armv7-a" FEATURES="assume-digests binpkg-logs buildpkg config-protect-if-modified distcc distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="-O2 -pipe -march=armv7-a" GENTOO_MIRRORS="http://distfiles.gentoo.org" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j8" PKGDIR="/usr/local/portage/packages" PORTAGE_CONFIGROOT="/mnt/sencha/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/overlay" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa arm berkdb bindist cli cracklib crypt custom-cflags cxx dri fontconfig gdbm gnutls iconv icu ipv6 modules mudflap ncurses neon nptl openmp pcre session ssl tcpd threads truetype unicode v4l xcb zlib" 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" CAMERAS="ptp2" 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" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en_US en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-4" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby19 ruby18" USERLAND="GNU" 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, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Please attach the entire build log to this bug report.
(In reply to Jeroen Roovers from comment #1) > Please attach the entire build log to this bug report. I already wiped out the build directory and am now trying to build www-client/chromium-30.0.1599.15. If that fails, I'll attach its build log.
Copying steev; I know he's been hacking on this on ARM.
(In reply to Matt Whitlock from comment #2) > I already wiped out the build directory and am now trying to build > www-client/chromium-30.0.1599.15. If that fails, I'll attach its build log. For what it's worth, www-client/chromium-30.0.1599.15 built successfully, so I no longer care whether 29.0.1547.57 builds. Thank you, steev, for your work on getting Chromium to build on ARM.
30+ does indeed work "fine" - however 2 patches from ARCH linux may or may not be needed when you don't have a neon unit. I'm still in the process of testing them (it built successfully, but the only machine I have that doesn't have a neon unit takes roughly 12 hours to build chromium so each build test takes a while :/ )
(In reply to Steev Klimaszewski from comment #5) > 30+ does indeed work "fine" Actually, I can't get it to successfully spawn a renderer. No error messages to stderr, but the renderer comes up with an "Aw snap!" (crash) message regardless of what page I try to display. Even "chrome://version". So something is not right. I went back to my binary package of 29.0.1547.32, as that's the last version of 29* that built successfully for me. I'm going to try building .57 again now.
(In reply to Matt Whitlock from comment #6) > I'm going to try building .57 again now. Built successfully. I removed -marm from my CFLAGS. Not sure if that's what made the difference.