Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Solved] ffmpeg-3.3.4 aarch64 build fails (configure phase)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo on ARM
View previous topic :: View next topic  
Author Message
defoo
n00b
n00b


Joined: 25 Jul 2017
Posts: 30

PostPosted: Sun Oct 01, 2017 1:09 pm    Post subject: [Solved] ffmpeg-3.3.4 aarch64 build fails (configure phase) Reply with quote

Hi,

the logs :

emerge --info '=media-video/ffmpeg-3.3.4::gentoo'
Code:
Portage 2.3.10 (python 3.4.6-final-0, default/linux/arm64/13.0/desktop, gcc-7.2.0, glibc-2.25-r5, 4.4.15 aarch64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.4.15-aarch64-with-gentoo-2.4.1
KiB Mem:     8041164 total,   6069272 free
KiB Swap:    4193276 total,   4193276 free
Timestamp of repository gentoo: Sun, 01 Oct 2017 11:30:01 +0000
Head commit of repository gentoo: 9d5bf8e5d5cfa2e3258f5324cfb4ec9af67f36f3
sh bash 4.4_p12
ld GNU ld (Gentoo 2.28.1 p1.0) 2.28.1
app-shells/bash:          4.4_p12::gentoo
dev-lang/perl:            5.24.3::gentoo
dev-lang/python:          2.7.14::gentoo, 3.4.6::gentoo
dev-util/cmake:           3.9.3::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/openrc:          0.31.2::gentoo
sys-apps/sandbox:         2.10-r4::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.13.4-r1::gentoo, 1.15.1-r1::gentoo
sys-devel/binutils:       2.28.1::gentoo, 2.29::gentoo, 2.29.1::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
    sync-rsync-extra-opts:

ACCEPT_KEYWORDS="arm64 ~arm64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="aarch64-unknown-linux-gnu"
CFLAGS="-O2 -pipe -march=native"
CHOST="aarch64-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config"
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"
CXXFLAGS="-O2"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="fr_FR.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j7"
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="/var/tmp"
USE="X a52 aac acl acpi alsa arm64 berkdb bluetooth branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvdr emboss encode exif fam ffmpeg firefox flac fortran gdbm gif glamor gpm gtk iconv ipv6 jpeg lcms libnotify mad mng modules mp3 mp4 mpeg multilib ncurses neon nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds qt3support qt4 readline seccomp session spell ssl startup-notification svg tcpd tiff truetype udev udisks unicode upower usb vorbis wxwidgets x264 xattr xcb xml xv xvid 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" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_ARM="edsp neon thumb thumb2 v4 v5 v6 v7 v8 vfp vfp-d32 vfpv3 vfpv4" 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" INPUT_DEVICES="evdev" KERNEL="linux" L10N="fr fr-FR en en-US" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="fr en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby21 ruby22" USERLAND="GNU" VIDEO_CARDS="nouveau fbdev tegra" 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


emerge -pqv '=media-video/ffmpeg-3.3.4::gentoo'
Code:
[ebuild     U ] media-video/ffmpeg-3.3.4 [3.3.3] USE="X alsa bzip2 encode gpl hardcoded-tables iconv mp3 network opengl postproc threads truetype vorbis x264 xcb xvid zlib (-altivec) (-amr) -amrenc (-bluray) (-bs2b) -cdio -celt -chromaprint -chromium -cpudetection -debug (-doc) -fdk -flite -fontconfig (-frei0r) -fribidi -gcrypt -gme -gmp -gnutls -gsm -iec61883 (-ieee1394) -jack -jpeg2k -kvazaar (-ladspa) -libass -libcaca -libilbc -librtmp -libsoxr -libv4l -lzma (-mipsdspr1) (-mipsdspr2) (-mipsfpu) (-mmal) -modplug (-nvenc) -openal -openh264 -openssl -opus -oss -pic -pulseaudio -rubberband (-samba) (-schroedinger) (-sdl) -snappy -sofalizer -speex -ssh -static-libs {-test} -theora -twolame -v4l -vaapi (-vdpau) (-vpx) -wavpack -webp -x265 -zeromq -zimg (-zvbi)" CPU_FLAGS_ARM="(neon) (thumb) (thumb2) (v6) (v8) (vfp) (vfpv3)" FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher"


/var/tmp/portage/media-video/ffmpeg-3.3.4/temp/build.log
Code:
 * Package:    media-video/ffmpeg-3.3.4
 * Repository: gentoo
 * Maintainer: media-video@gentoo.org
 * USE:        X alsa arm64 bzip2 cpu_flags_arm_neon cpu_flags_arm_thumb cpu_flags_arm_thumb2 cpu_flags_arm_v6 cpu_flags_arm_v8 cpu_flags_arm_vfp cpu_flags_arm_vfpv3 elibc_glibc encode fftools_aviocat fftools_cws2fws fftools_ffescape fftools_ffeval fftools_ffhash fftools_fourcc2pixfmt fftools_graph2dot fftools_ismindex fftools_pktdumper fftools_qt-faststart fftools_sidxindex fftools_trasher gpl hardcoded-tables iconv kernel_linux mp3 network opengl postproc threads truetype userland_GNU vorbis x264 xcb xvid zlib
 * FEATURES:   preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
>>> Unpacking ffmpeg-3.3.4.tar.bz2 to /var/tmp/portage/media-video/ffmpeg-3.3.4/work
>>> Source unpacked in /var/tmp/portage/media-video/ffmpeg-3.3.4/work
>>> Preparing source in /var/tmp/portage/media-video/ffmpeg-3.3.4/work/ffmpeg-3.3.4 ...
 * Applying openjpeg22.patch ...
 [ ok ]
 * Applying chromium.patch ...
 [ ok ]
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/media-video/ffmpeg-3.3.4/work/ffmpeg-3.3.4 ...
 * .arm64: running multilib-minimal_abi_src_configure
/var/tmp/portage/media-video/ffmpeg-3.3.4/work/ffmpeg-3.3.4/configure --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --docdir=/usr/share/doc/ffmpeg-3.3.4/html --mandir=/usr/share/man --enable-shared --cc=aarch64-unknown-linux-gnu-gcc --cxx=aarch64-unknown-linux-gnu-g++ --ar=aarch64-unknown-linux-gnu-ar --optflags=-O2 -pipe -march=native --disable-static --enable-avfilter --enable-avresample --disable-stripping --disable-indev=v4l2 --disable-outdev=v4l2 --disable-indev=oss --disable-indev=jack --disable-outdev=oss --disable-outdev=sdl --enable-bzlib --disable-runtime-cpudetect --disable-debug --disable-gcrypt --disable-gnutls --disable-gmp --enable-gpl --enable-hardcoded-tables --enable-iconv --disable-lzma --enable-network --disable-openssl --enable-postproc --disable-libsmbclient --disable-ffplay --disable-sdl2 --disable-vaapi --disable-vdpau --enable-xlib --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes --enable-zlib --disable-libcdio --disable-libiec61883 --disable-libdc1394 --disable-libcaca --disable-openal --enable-opengl --disable-libv4l2 --disable-libpulse --disable-libopencore-amrwb --disable-libopencore-amrnb --disable-libfdk-aac --disable-libopenjpeg --disable-libbluray --disable-libcelt --disable-libgme --disable-libgsm --disable-mmal --disable-libmodplug --disable-libopus --disable-libilbc --disable-librtmp --disable-libssh --disable-libschroedinger --disable-libspeex --enable-libvorbis --disable-libvpx --disable-libzvbi --disable-libbs2b --disable-chromaprint --disable-libflite --disable-frei0r --disable-libfribidi --disable-fontconfig --disable-ladspa --disable-libass --enable-libfreetype --disable-librubberband --disable-netcdf --disable-libzmq --disable-libzimg --disable-libsoxr --enable-pthreads --disable-libvo-amrwbenc --enable-libmp3lame --disable-libkvazaar --disable-nvenc --disable-libopenh264 --disable-libsnappy --disable-libtheora --disable-libtwolame --disable-libwavpack --disable-libwebp --enable-libx264 --disable-libx265 --enable-libxvid --cpu=host --disable-doc --disable-htmlpages --enable-manpages
--cpu=host not supported with compiler aarch64-unknown-linux-gnu-gcc

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.
 * ERROR: media-video/ffmpeg-3.3.4::gentoo failed (configure phase):
 *   (no error message)
 *
 * Call stack:
 *     ebuild.sh, line  124:  Called src_configure
 *   environment, line 3219:  Called multilib-minimal_src_configure
 *   environment, line 2314:  Called multilib_foreach_abi 'multilib-minimal_abi_src_configure'
 *   environment, line 2528:  Called multibuild_foreach_variant '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_configure'
 *   environment, line 2244:  Called _multibuild_run '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_configure'
 *   environment, line 2242:  Called _multilib_multibuild_wrapper 'multilib-minimal_abi_src_configure'
 *   environment, line  681:  Called multilib-minimal_abi_src_configure
 *   environment, line 2308:  Called multilib_src_configure
 *   environment, line 2832:  Called die
 * The specific snippet of code:
 *       "${@}" || die;


Last edited by defoo on Sun Oct 01, 2017 9:38 pm; edited 1 time in total
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21633

PostPosted: Sun Oct 01, 2017 5:00 pm    Post subject: Reply with quote

Your CFLAGS set -march=native, so the ebuild passed --cpu=host to the upstream configure script. Upstream's configure script does not know how to handle your host CPU type, so it aborted. As a workaround, do not set -march=native for this package. As a short term fix, ask the ebuild maintainer to ignore -march=native on affected ARM platforms. As a long term fix, ask the ffmpeg developers to add configure support for this CPU type.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Sun Oct 01, 2017 7:23 pm    Post subject: Reply with quote

defoo,

Code:
CFLAGS="-O2 -pipe -march=native"
That's OK with gcc-7.2.0. It gets march=native right.
Code:
CXXFLAGS="-O2"
is a bit odd. I'm not sure what C++ gets passed for -march.

Normally, CFLAGS and CXXFLAGS are set to the same thing.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
defoo
n00b
n00b


Joined: 25 Jul 2017
Posts: 30

PostPosted: Sun Oct 01, 2017 9:38 pm    Post subject: Reply with quote

Code:
CFLAGS="-O2 -pipe" emerge ffmpeg


worked well.
Can't tell why, NeddySeagoon.

Many thanks Hu.
Back to top
View user's profile Send private message
arm64-abacus
n00b
n00b


Joined: 02 Aug 2022
Posts: 6

PostPosted: Wed Aug 03, 2022 10:40 am    Post subject: Reply with quote

As described in the Handbook https://wiki.gentoo.org/wiki/Handbook:AMD64/Full/Portage#Per-package_environment_variables I did:

1. create /etc/portage/package.env containing
Code:
media-video/ffmpeg mpegflags


2. create /etc/portage/env/mpegflags containing
Code:
COMMON_FLAGS="-O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"


Thanks to the people above for helping out!
Back to top
View user's profile Send private message
flysideways
Guru
Guru


Joined: 29 Jan 2005
Posts: 437

PostPosted: Sat Aug 13, 2022 4:53 am    Post subject: Reply with quote

I used this fix for ffmpeg-4.4.2 as it too would not configure with -march=native. Using -march=native on apple silicon with UTM/QEMU, as I have yet to figure out what it should specifically be set too.
Back to top
View user's profile Send private message
greyhare
n00b
n00b


Joined: 05 Jun 2014
Posts: 7

PostPosted: Thu Aug 25, 2022 4:09 am    Post subject: Reply with quote

Doing the same install type as flysideways, too, and hit the same problem. Disappointed that upstream hasn't fixed it in five years.

As for what better `-march` to use... well, there's a pretty long article about how hard that question is to answer, and `-mtune` and `-mcpu` get dragged into it. Running `gcc --target-help` doesn't clarify things either.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on ARM All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum