[FFmpeg-devel] Startcode related compile error on arm4/arm5

Bernd Kuhls bernd.kuhls at t-online.de
Tue Sep 23 14:57:04 CEST 2014


Hi,

Since these commits
http://git.videolan.org/?
p=ffmpeg.git;a=commitdiff;h=adf8227cf4e7b4fccb2ad88e1e09b6dc00dd00ed
http://git.videolan.org/?
p=ffmpeg.git;a=commitdiff;h=db7f1c7c5a1d37e7f4da64a79a97bea1c4b6e9f8

compilation on arm4/arm5 fails:

libavcodec/libavcodec.so: undefined reference to 
`ff_startcode_find_candidate_armv6'

Because libavcodec/arm/Makefile contains
ARMV6-OBJS-$(CONFIG_STARTCODE)         += arm/startcode_armv6.o
function ff_startcode_find_candidate_armv6 is not included for older ARM 
archs. The bug was found during automatic buildroot builds:

http://autobuild.buildroot.net/results/ec7/ec71e4f16ee9106747dff5f15999cbd1
7903e76f//build-end.log
Quote from configure summary:
ARCH                      arm (armv4t)
big-endian                no
runtime cpu detection     yes
ARMv5TE enabled           no
ARMv6 enabled             no
ARMv6T2 enabled           no

http://autobuild.buildroot.net/results/be7/be72eb182eaccf0064a32c9dfc2ac1c0
d6555506/build-end.log
ARCH                      arm (armv5te)
big-endian                no
runtime cpu detection     yes
ARMv5TE enabled           yes
ARMv6 enabled             no
ARMv6T2 enabled           no

I am unsure how to fix this problem, is adding some #ifdef code in
libavcodec/arm/h264dsp_init_arm.c
libavcodec/arm/vc1dsp_init_arm.c

to exclude

if (have_setend(cpu_flags))
    dsp->startcode_find_candidate = ff_startcode_find_candidate_armv6;

enough?

Regards, Bernd



More information about the ffmpeg-devel mailing list