Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 562600 - www-client/chromium-46.0.2490.42 build_ffmpeg.py incorrect configure command for armv7a-hardfloat-linux-gnueabi
Summary: www-client/chromium-46.0.2490.42 build_ffmpeg.py incorrect configure command ...
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: ARM Linux
: Normal normal (vote)
Assignee: Chromium Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-10-08 19:58 UTC by Steven Davies
Modified: 2017-09-15 12:39 UTC (History)
3 users (show)

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


Attachments
Fix for ffmpeg failing on arm devices (chromium-50.0.2661.75_ffmpeg_cross_fix.ebuild.patch,902 bytes, patch)
2016-04-21 20:40 UTC, Sarah Day
Details | Diff
CORRECTED: Fix for ffmpeg failing on arm devices (chromium-50.0.2661.75_ffmpeg_cross_fix.ebuild.patch,720 bytes, patch)
2016-04-21 20:59 UTC, Sarah Day
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Steven Davies 2015-10-08 19:58:42 UTC
Building www-client/chromium-46.0.2490.42 on armv7a-hardfloat-linux-gnueabi fails when configuring ffmpeg during the compile. It is trying to use the wrong compiler (this is not a cross-compilation environment) and wrong mtune cflags (this is not a cortex chip):

armv7a-cros-linux-gnueabi-gcc is unable to create an executable file.
C compiler test failed.

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solve the problem.
Traceback (most recent call last):
  File "chromium/scripts/build_ffmpeg.py", line 586, in <module>
    sys.exit(main(sys.argv[1:]))
  File "chromium/scripts/build_ffmpeg.py", line 556, in main
    configure_args)
  File "chromium/scripts/build_ffmpeg.py", line 545, in do_build_ffmpeg
    options.config_only, branding, configure_flags)
  File "chromium/scripts/build_ffmpeg.py", line 201, in BuildFFmpeg
    [os.path.join(FFMPEG_DIR, 'configure')] + configure_flags, cwd=config_dir)
  File "chromium/scripts/build_ffmpeg.py", line 93, in PrintAndCheckCall
    subprocess.check_call(argv, *args, **kwargs)
  File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/var/tmp/portage/www-client/chromium-46.0.2490.42/work/chromium-46.0.2490.42/third_party/ffmpeg/configure', '--disable-everything', '--disable-all', '--disable-doc', '--disable-htmlpages', '--disable-manpages', '--disable-podpages', '--disable-txtpages', '--disable-static', '--enable-avcodec', '--enable-avformat', '--enable-avutil', '--enable-fft', '--enable-rdft', '--enable-static', '--disable-bzlib', '--disable-error-resilience', '--disable-iconv', '--disable-lzo', '--disable-network', '--disable-sdl', '--disable-symver', '--disable-xlib', '--disable-zlib', '--disable-securetransport', '--disable-d3d11va', '--disable-dxva2', '--disable-vaapi', '--disable-vda', '--disable-vdpau', '--enable-decoder=vorbis', '--enable-decoder=pcm_u8,pcm_s16le,pcm_s24le,pcm_f32le', '--enable-decoder=pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw', '--enable-demuxer=ogg,matroska,wav', '--enable-parser=opus,vorbis', '--optflags="-O2"', '--enable-decoder=theora,vp8', '--enable-parser=vp3,vp8', '--arch=arm', '--enable-armv6', '--enable-armv6t2', '--enable-vfp', '--enable-thumb', '--extra-cflags=-march=armv7-a', '--enable-cross-compile', '--target-os=linux', '--cross-prefix=armv7a-cros-linux-gnueabi-', '--extra-cflags=-mtune=cortex-a8', '--extra-cflags=-mfloat-abi=hard', '--enable-neon', '--extra-cflags=-mfpu=neon', '--enable-pic', '--enable-decoder=aac,h264,mp3', '--enable-demuxer=aac,mp3,mov', '--enable-parser=aac,h264,mpegaudio']' returned non-zero exit status 1
 * ERROR: www-client/chromium-46.0.2490.42::gentoo failed (configure phase):
 *   (no error message)
 *
 * Call stack:
 *     ebuild.sh, line  93:  Called src_configure
 *   environment, line 5130:  Called die
 * The specific snippet of code:
 *       chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die;
 *
 * If you need support, post the output of `emerge --info '=www-client/chromium-46.0.2490.42::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=www-client/chromium-46.0.2490.42::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/www-client/chromium-46.0.2490.42/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/www-client/chromium-46.0.2490.42/temp/environment'.
 * Working directory: '/var/tmp/portage/www-client/chromium-46.0.2490.42/work/chromium-46.0.2490.42/third_party/ffmpeg'
 * S: '/var/tmp/portage/www-client/chromium-46.0.2490.42/work/chromium-46.0.2490.42'



Portage 2.2.20.1 (python 2.7.9-final-0, default/linux/arm/13.0/armv7a, gcc-4.9.3, glibc-2.20-r2, 4.2.0+ armv7l)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.2.0+-armv7l-with-gentoo-2.2
KiB Mem:     2068468 total,    505772 free
KiB Swap:    4192928 total,   3997728 free
Timestamp of repository gentoo: Thu, 08 Oct 2015 11:00:01 +0000
sh bash 4.3_p39
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
distcc 3.1 armv7a-hardfloat-linux-gnueabi [enabled]
app-shells/bash:          4.3_p39::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.9-r1::gentoo, 3.3.5-r1::gentoo, 3.4.1::gentoo
dev-util/cmake:           2.8.12.2-r1::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.17::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.12.6::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1-r1::gentoo
sys-devel/gcc:            4.8.4::gentoo, 4.9.3::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.18::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

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

x-portage
    location: /usr/local/portage
    masters: gentoo
    priority: 0

ACCEPT_KEYWORDS="arm"
ACCEPT_LICENSE="* -@EULA"
CBUILD="armv7a-hardfloat-linux-gnueabi"
CFLAGS="-O2 -pipe -march=armv7-a -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=hard"
CHOST="armv7a-hardfloat-linux-gnueabi"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/php/cli-php5.6/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="-O2 -pipe -march=armv7-a -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=hard"
DISTDIR="/usr/portage/distfiles"
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 userpriv usersandbox usersync"
FFLAGS="-O2 -pipe -march=armv7-a"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_GB.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
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"
PORTAGE_TMPDIR="/var/tmp"
USE="X acl alsa apache2 arm armv5te armv6 armv6t2 berkdb btrfs bzip2 cairo caps cli cracklib crypt curl cxx dbus dri dvb egl fat fortran gd gdbm gles1 gles2 gtk gudev hwdb iconv icu imap imapc ipv6 jpeg libkms managesieve mdadm mmap modules mysql mysqli ncurses neon nls nptl opengl openmp osmesa pam pango pcre pdo png pulseaudio readline sdbox seccomp session sieve smp sockets sqlite ssl static-libs tcpd threads tty-helpers unicode vhosts xslt xv xvmc zlib" APACHE2_MODULES="auth_basic auth_digest authn_file authz_host authz_owner authz_group authz_user autoindex dav dav_lock dav_fs dir env log_config mime proxy proxy_ajp proxy_http setenvif rewrite userdir" APACHE2_MPMS="worker" 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 ublox 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_GB en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="fbdev mali exynos" 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

Reproducible: Always
Comment 1 Steven Davies 2015-10-08 20:01:52 UTC
Apologies, this *is* a cortex chip but a9 not a8. Not sure if related.
Comment 2 Alex Xu (Hello71) 2015-10-13 14:54:48 UTC
Please "Include the log file 'config.log' produced by configure".
Comment 3 Mike Gilbert gentoo-dev 2015-10-16 18:45:40 UTC
Do you experience the same failure with the latest chromium-47 ebuild with the system-ffmpeg USE flag disabled?
Comment 4 Steven Davies 2015-10-23 09:44:09 UTC
Yes, I receive the same with the later ebuild and the -system-ffmpeg USE flag set (i.e. disabled)

>>> Preparing source in /var/tmp/portage/www-client/chromium-47.0.2526.16/work/chromium-47.0.2526.16 ...
 * Applying chromium-system-ffmpeg-r0.patch ...                                                                                                          [ ok ]
 * Applying chromium-system-jinja-r7.patch ...                                                                                                           [ ok ]
 * Applying chromium-widevine-r1.patch ...                                                                                                               [ ok ]
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/www-client/chromium-47.0.2526.16/work/chromium-47.0.2526.16 ...
 * Configuring bundled ffmpeg...
System information:
Host OS       : linux
Target OS     : linux
Host arch     : arm
Target arch   : arm-neon
Parallel jobs : 4

Chromium skipped
Chrome configure/build:
Running ['/var/tmp/portage/www-client/chromium-47.0.2526.16/work/chromium-47.0.2526.16/third_party/ffmpeg/configure', '--disable-everything', '--disable-all', '--disable-doc', '--disable-htmlpages', '--disable-manpages', '--disable-podpages', '--disable-txtpages', '--disable-static', '--enable-avcodec', '--enable-avformat', '--enable-avutil', '--enable-fft', '--enable-rdft', '--enable-static', '--disable-bzlib', '--disable-error-resilience', '--disable-iconv', '--disable-lzo', '--disable-network', '--disable-sdl', '--disable-symver', '--disable-xlib', '--disable-zlib', '--disable-securetransport', '--disable-d3d11va', '--disable-dxva2', '--disable-vaapi', '--disable-vda', '--disable-vdpau', '--disable-videotoolbox', '--enable-decoder=vorbis', '--enable-decoder=pcm_u8,pcm_s16le,pcm_s24le,pcm_f32le', '--enable-decoder=pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw', '--enable-demuxer=ogg,matroska,wav', '--enable-parser=opus,vorbis', '--optflags="-O2"', '--enable-decoder=theora,vp8', '--enable-parser=vp3,vp8', '--arch=arm', '--enable-armv6', '--enable-armv6t2', '--enable-vfp', '--enable-thumb', '--extra-cflags=-march=armv7-a', '--enable-cross-compile', '--target-os=linux', '--cross-prefix=armv7a-cros-linux-gnueabi-', '--extra-cflags=-mtune=cortex-a8', '--extra-cflags=-mfloat-abi=hard', '--enable-neon', '--extra-cflags=-mfpu=neon', '--enable-pic', '--enable-decoder=aac,h264,mp3', '--enable-demuxer=aac,mp3,mov', '--enable-parser=aac,h264,mpegaudio']
armv7a-cros-linux-gnueabi-gcc is unable to create an executable file.
C compiler test failed.

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solve the problem.
Traceback (most recent call last):
  File "chromium/scripts/build_ffmpeg.py", line 591, in <module>
    sys.exit(main(sys.argv[1:]))
  File "chromium/scripts/build_ffmpeg.py", line 561, in main
    configure_args)
  File "chromium/scripts/build_ffmpeg.py", line 550, in do_build_ffmpeg
    options.config_only, branding, configure_flags)
  File "chromium/scripts/build_ffmpeg.py", line 203, in BuildFFmpeg
    [os.path.join(FFMPEG_DIR, 'configure')] + configure_flags, cwd=config_dir)
  File "chromium/scripts/build_ffmpeg.py", line 92, in PrintAndCheckCall
    subprocess.check_call(argv, *args, **kwargs)
  File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/var/tmp/portage/www-client/chromium-47.0.2526.16/work/chromium-47.0.2526.16/third_party/ffmpeg/configure', '--disable-everything', '--disable-all', '--disable-doc', '--disable-htmlpages', '--disable-manpages', '--disable-podpages', '--disable-txtpages', '--disable-static', '--enable-avcodec', '--enable-avformat', '--enable-avutil', '--enable-fft', '--enable-rdft', '--enable-static', '--disable-bzlib', '--disable-error-resilience', '--disable-iconv', '--disable-lzo', '--disable-network', '--disable-sdl', '--disable-symver', '--disable-xlib', '--disable-zlib', '--disable-securetransport', '--disable-d3d11va', '--disable-dxva2', '--disable-vaapi', '--disable-vda', '--disable-vdpau', '--disable-videotoolbox', '--enable-decoder=vorbis', '--enable-decoder=pcm_u8,pcm_s16le,pcm_s24le,pcm_f32le', '--enable-decoder=pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw', '--enable-demuxer=ogg,matroska,wav', '--enable-parser=opus,vorbis', '--optflags="-O2"', '--enable-decoder=theora,vp8', '--enable-parser=vp3,vp8', '--arch=arm', '--enable-armv6', '--enable-armv6t2', '--enable-vfp', '--enable-thumb', '--extra-cflags=-march=armv7-a', '--enable-cross-compile', '--target-os=linux', '--cross-prefix=armv7a-cros-linux-gnueabi-', '--extra-cflags=-mtune=cortex-a8', '--extra-cflags=-mfloat-abi=hard', '--enable-neon', '--extra-cflags=-mfpu=neon', '--enable-pic', '--enable-decoder=aac,h264,mp3', '--enable-demuxer=aac,mp3,mov', '--enable-parser=aac,h264,mpegaudio']' returned non-zero exit status 1


~> emerge -puv "=www-client/chromium-47.0.2526.16"

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U ~] www-client/chromium-47.0.2526.16::gentoo [43.0.2357.65::gentoo] USE="hangouts%* neon (pic) proprietary-codecs pulseaudio tcmalloc -cups -custom-cflags -gnome -gnome-keyring (-gtk3) -hidpi -hotwording% -kerberos (-selinux) (-system-ffmpeg) {-test} (-widevine)" LINGUAS="en_GB -am -ar -bg -bn -ca -cs -da -de -el -es -es_LA -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" 0 KiB

Total: 1 package (1 upgrade), Size of downloads: 0 KiB
Comment 5 Sarah Day 2016-04-21 20:36:56 UTC
(In reply to Mike Gilbert from comment #3)
> Do you experience the same failure with the latest chromium-47 ebuild with
> the system-ffmpeg USE flag disabled?

To avoid rebuilding the build in ffmpeg both the system-ffmpeg and gn use flags would have to be disabled.
Comment 6 Sarah Day 2016-04-21 20:40:20 UTC
Created attachment 431466 [details, diff]
Fix for ffmpeg failing on arm devices

This fixes the ffmpeg rebuild. It's a pretty generic non-architecture dependant patch. Unfortunately, even with the --disable-cross-compile option the ffmpeg build still uses the --cross-prefix option, so this has to be set in all cases.
Comment 7 Sarah Day 2016-04-21 20:59:56 UTC
Created attachment 431468 [details, diff]
CORRECTED: Fix for ffmpeg failing on arm devices

For some reason the last patch I added had the tabs replaced with spaces. This one switches it correctly back to tabs.
Comment 8 Sarah Day 2016-05-10 15:50:39 UTC
What's the current status on this?
Comment 9 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2017-09-15 12:39:31 UTC
Declaring arm bug bankruptcy.

I don't really have an arm system to test with - sorry about that. There didn't seem to be activity on these old bugs either.

I suspect there are still some issues with chromium on arm. Please open new bugs for these, and let's see what we can do.