Unable to compile FFMpeg for armv7 and armv7s

1.3k views Asked by At

I've tried several of the latest FFMpeg releases (2.1.4, and 2.2 rc2) but have not been able to compile because of the following errors:

INSTALL libavformat/libavformat.a
AS  libavcodec/arm/vp8dsp_armv6.o
AR  libavresample/libavresample.a
CC  libavcodec/ass_split.o
CC  libavcodec/assdec.o
CC  libavcodec/asv.o
CC  libavcodec/asvdec.o
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2163:11: error: branch target out of range
        b vp8_put_epel_h6_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2181:11: error: branch target out of range
        b vp8_put_epel_v6_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2199:11: error: branch target out of range
        b vp8_put_epel_h6_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2217:11: error: branch target out of range
        b vp8_put_epel_v6_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2235:11: error: branch target out of range
        b vp8_put_epel_h4_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2253:11: error: branch target out of range
        b vp8_put_epel_v4_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2271:11: error: branch target out of range
        b vp8_put_epel_h6_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2289:11: error: branch target out of range
        b vp8_put_epel_v6_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2307:11: error: branch target out of range
        b vp8_put_epel_h4_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2325:11: error: branch target out of range
        b vp8_put_epel_v4_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2344:11: error: branch target out of range
        b vp8_put_bilin_h_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2362:11: error: branch target out of range
        b vp8_put_bilin_v_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2380:11: error: branch target out of range
        b vp8_put_bilin_h_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2398:11: error: branch target out of range
        b vp8_put_bilin_v_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2416:11: error: branch target out of range
        b vp8_put_bilin_h_armv6 + 4
          ^
/Users/erikvillegas/Development/ffmpeg64/ffmpeg/libavcodec/arm/vp8dsp_armv6.S:2434:11: error: branch target out of range
        b vp8_put_bilin_v_armv6 + 4
          ^
make: *** [libavcodec/arm/vp8dsp_armv6.o] Error 1

The problem lies in the libavcodec library. I'm able to compile for arm64 and x86_64 but not for armv7 and armv7s.

I'm using the following build script: https://github.com/kewlbear/FFmpeg-iOS-build-script

Any ideas?

1

There are 1 answers

0
Mattias On

./configure --disable-asm will get rid of this error. It disables use of inline assembly code across the board though, so keep an eye on performance / battery drain.