[FFmpeg-devel] snapshots differ from git clone

Jan Ehrhardt phpdev at ehrhardt.nl
Tue Aug 2 23:54:15 EEST 2016


I have a script that cross-compiles ffmpeg on Ubuntu for Windows.
Because it is faster to download a snapshot and extract it than
doing a git clone the script uses
http://ffmpeg.org/releases/ffmpeg-snapshot-git.tar.bz2

Recently I ran into unresolved externals in x86/dirac_dwt_init.c/o.
Details below. A clumsy workaround:

$ rm -f libavcodec/x86/dirac*
$ git stash

The problem seems to be that the snapshots differ from a git clone
and for instance contain >50 untracked files, amongst which:

    libavcodec/x86/dirac_dwt.c
    libavcodec/x86/dirac_dwt.h
    libavcodec/x86/diracdsp_mmx.c
    libavcodec/x86/diracdsp_mmx.h
    libavcodec/x86/diracdsp_yasm.asm
    libavcodec/x86/dwt_yasm.asm
    libavcodec/x86/vc1dsp.asm

A git clone has only these files:

    libavcodec/x86/diracdsp.asm
    libavcodec/x86/diracdsp_init.c
    libavcodec/x86/dirac_dwt.asm
    libavcodec/x86/dirac_dwt_init.c

Question: why are the snapshots different from a git clone?
-- 
Jan

Details of the builds below

(more undefined references)
/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt_init.c:138: undefined reference to `ff_vertical_compose_dd137iL0_mmx'
libavcodec/libavcodec.a(dirac_dwt_init.o): In function `vertical_compose_dirac53iH0_mmx':
/home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt_init.c:138: undefined reference to `ff_vertical_compose_dirac53iH0_mmx'
libavcodec/libavcodec.a(dirac_dwt_init.o): In function `vertical_compose_dd97iH0_mmx':
/home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt_init.c:138: undefined reference to `ff_vertical_compose_dd97iH0_mmx'
libavcodec/libavcodec.a(dirac_dwt_init.o): In function `vertical_compose53iL0_mmx':
/home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt_init.c:138: undefined reference to `ff_vertical_compose53iL0_mmx'
collect2: error: ld returned 1 exit status
collect2: error: ld returned 1 exit status
make: *** [ffmpeg_g.exe] Error 1
make: *** Waiting for unfinished jobs....
make: *** [ffplay_g.exe] Error 1
jan at box:~/sandbox/win32/ffmpeg$ ls -la /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac*
-rw-rw-r-- 1 jan jan  8500 Jul 22 18:20 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp.asm
-rw-rw-r-- 1 jan jan   122 Aug  2 01:09 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp.d
-rw-rw-r-- 1 jan jan  8883 Jul 22 18:20 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp_init.c
-rw-rw-r-- 1 jan jan   225 Aug  2 01:09 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp_init.d
-rw-rw-r-- 1 jan jan 17146 Aug  2 01:09 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp_init.o
-rw-r--r-- 1 jan jan  6752 Jul 21  2014 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp_mmx.c
-rw-r--r-- 1 jan jan  2176 Nov  1  2012 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp_mmx.h
-rw-rw-r-- 1 jan jan  4262 Aug  2 01:09 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp.o
-rw-rw-r-- 1 jan jan  6687 Jul 26  2015 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp_yasm.asm
-rw-rw-r-- 1 jan jan  7514 Feb  6 19:20 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt.asm
-rw-r--r-- 1 jan jan  6946 Jul 21  2014 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt.c
-rw-rw-r-- 1 jan jan   243 Aug  2 01:09 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt.d
-rw-r--r-- 1 jan jan  1190 May 25  2013 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt.h
-rw-rw-r-- 1 jan jan  7800 Feb  6 19:20 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt_init.c
-rw-rw-r-- 1 jan jan   226 Aug  2 01:09 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt_init.d
-rw-rw-r-- 1 jan jan 18426 Aug  2 01:09 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt_init.o
-rw-rw-r-- 1 jan jan 15806 Aug  2 01:09 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt.o
jan at box:~/sandbox/win32/ffmpeg$ rm -f /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac*
jan at box:~/sandbox/win32/ffmpeg$ git stash
Saved working directory and index state WIP on master: d9b0b1a applied
HEAD is now at d9b0b1a applied
jan at box:~/sandbox/win32/ffmpeg$ ls -la /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac*
-rw-rw-r-- 1 jan jan 8500 Aug  2 01:16 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp.asm
-rw-rw-r-- 1 jan jan 8883 Aug  2 01:16 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/diracdsp_init.c
-rw-rw-r-- 1 jan jan 7514 Aug  2 01:16 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt.asm
-rw-rw-r-- 1 jan jan 7800 Aug  2 01:16 /home/jan/sandbox/win32/ffmpeg/libavcodec/x86/dirac_dwt_init.c
jan at box:~/sandbox/win32/ffmpeg$ git status
Untracked files:
  (use "git add <file>..." to include in what will be committed)

    libavcodec/aac_tablegen.c
    libavcodec/aac_tablegen.h
    libavcodec/aac_tablegen_decl.h
    libavcodec/aacsbr_fixed_tablegen.c
    libavcodec/aacsbr_tablegen.c
    libavcodec/arm/dcadsp_init_arm.c
    libavcodec/arm/dcadsp_neon.S
    libavcodec/arm/dcadsp_vfp.S
    libavcodec/arm/dct-test.c
    libavcodec/dct-test.c
    libavcodec/dsd_tablegen.c
    libavcodec/fft-fixed-test.c
    libavcodec/fft-fixed32-test.c
    libavcodec/fft-test.c
    libavcodec/g723_1_data.h
    libavcodec/golomb-test.c
    libavcodec/hevc_parse.c
    libavcodec/imgconvert.h
    libavcodec/libaacplus.c
    libavcodec/libdcadec.c
    libavcodec/libstagefright.cpp
    libavcodec/libutvideo.h
    libavcodec/libutvideodec.cpp
    libavcodec/libutvideoenc.cpp
    libavcodec/libvo-aacenc.c
    libavcodec/mathops.c
    libavcodec/motion-test.c
    libavcodec/ppc/dct-test.c
    libavcodec/svq3.h
    libavcodec/x86/dct-test.c
    libavcodec/x86/dirac_dwt.c
    libavcodec/x86/dirac_dwt.h
    libavcodec/x86/diracdsp_mmx.c
    libavcodec/x86/diracdsp_mmx.h
    libavcodec/x86/diracdsp_yasm.asm
    libavcodec/x86/dwt_yasm.asm
    libavcodec/x86/vc1dsp.asm
    libavfilter/filtfmts.c
    libavformat/libquvi.c
    libavformat/md5enc.c
    libavformat/noproxy-test.c
    libavformat/seek-test.c
    libavformat/url-test.c
    libavresample/avresample-test.c
    libavutil/softfloat.c
    libavutil/utf8.c
    libavutil/x86_cpu.h
    libswresample/swresample-test.c
    libswscale/colorspace-test.c
    libswscale/swscale-test.c
    tests/ref/fate/indeo2
    tests/ref/fate/indeo3
    tests/ref/fate/rscc
    tests/ref/fate/screenpresso
    tests/ref/fate/sgi-gray
    tests/ref/vsynth/vsynth_lena-ffv1-v3-yuv420
    tools/build_libstagefright
jan at box:~/sandbox/win32/ffmpeg$ make
YASM    libavcodec/x86/dirac_dwt.o
STRIP   libavcodec/x86/dirac_dwt.o
CC      libavcodec/x86/dirac_dwt_init.o
YASM    libavcodec/x86/diracdsp.o
STRIP   libavcodec/x86/diracdsp.o
CC      libavcodec/x86/diracdsp_init.o
AR      libavcodec/libavcodec.a
LD      ffmpeg_g.exe
CP      ffmpeg.exe
STRIP   ffmpeg.exe
LD      ffplay_g.exe
CP      ffplay.exe
STRIP   ffplay.exe
LD      ffprobe_g.exe
CP      ffprobe.exe
STRIP   ffprobe.exe


More information about the ffmpeg-devel mailing list