Opened 7 years ago

Closed 7 years ago

#6456 closed defect (invalid)

"undefined reference to `av...'" when building shared FFmpeg binaries

Reported by: CoRoNe Owned by:
Priority: normal Component: build system
Version: git-master Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

The last couple of months I've successfully cross-compiled several static FFmpeg builds. Now I've been trying to cross-compile a shared FFmpeg build with this script, but it constantly errors out at 'avfilter-6.dll':

LD      libswresample/swresample-2.dll
sed -e "s/ @[^ ]*//" libswresample/swresample-2.orig.def > libswresample/swresample-2.def; /cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/cross_compilers/mingw-w64-i686/bin/i686-w64-mingw32-dlltool -m i386 -d libswresample/swresample-2.def -l libswresample/swresample.lib -D swresample-2.dll
LD      libavcodec/avcodec-57.dll
sed -e "s/ @[^ ]*//" libavcodec/avcodec-57.orig.def > libavcodec/avcodec-57.def; /cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/cross_compilers/mingw-w64-i686/bin/i686-w64-mingw32-dlltool -m i386 -d libavcodec/avcodec-57.def -l libavcodec/avcodec.lib -D avcodec-57.dll
LD      libavformat/avformat-57.dll
/cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/cross_compilers/mingw-w64-i686/i686-w64-mingw32/lib/libgnutls.a(sha256-ssse3-x86.o): warning: common of `_gnutls_x86_cpuid_s' overridden by definition
/cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/cross_compilers/mingw-w64-i686/i686-w64-mingw32/lib/libgnutls.a(x86-common.o): warning: defined here
sed -e "s/ @[^ ]*//" libavformat/avformat-57.orig.def > libavformat/avformat-57.def; /cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/cross_compilers/mingw-w64-i686/bin/i686-w64-mingw32-dlltool -m i386 -d libavformat/avformat-57.def -l libavformat/avformat.lib -D avformat-57.dll
LD      libavfilter/avfilter-6.dll
libavfilter/f_metadata.o:f_metadata.c:(.text+0xc2): undefined reference to `avio_write'
libavfilter/f_metadata.o:f_metadata.c:(.text.unlikely+0x20b): undefined reference to `avio_open'
libavfilter/f_metadata.o:f_metadata.c:(.text.unlikely+0x21b): undefined reference to `avio_open'
libavfilter/f_metadata.o:f_metadata.c:(.text.unlikely+0x15): undefined reference to `avio_closep'
libavfilter/lavfutils.o:lavfutils.c:(.text+0x41): undefined reference to `av_register_all'
libavfilter/lavfutils.o:lavfutils.c:(.text+0x4d): undefined reference to `av_find_input_format'
libavfilter/lavfutils.o:lavfutils.c:(.text+0x68): undefined reference to `avformat_open_input'
libavfilter/lavfutils.o:lavfutils.c:(.text+0x82): undefined reference to `avformat_find_stream_info'
libavfilter/lavfutils.o:lavfutils.c:(.text+0x114): undefined reference to `av_read_frame'
libavfilter/lavfutils.o:lavfutils.c:(.text+0x244): undefined reference to `avformat_close_input'
libavfilter/lavfutils.o:lavfutils.c:(.text+0x3f0): undefined reference to `avformat_close_input'
libavfilter/src_movie.o:src_movie.c:(.text+0x256): undefined reference to `av_seek_frame'
libavfilter/src_movie.o:src_movie.c:(.text+0x4d7): undefined reference to `av_seek_frame'
libavfilter/src_movie.o:src_movie.c:(.text+0x851): undefined reference to `av_read_frame'
libavfilter/src_movie.o:src_movie.c:(.text.unlikely+0x1a2): undefined reference to `av_register_all'
libavfilter/src_movie.o:src_movie.c:(.text.unlikely+0x1b3): undefined reference to `av_find_input_format'
libavfilter/src_movie.o:src_movie.c:(.text.unlikely+0x1d8): undefined reference to `avformat_open_input'
libavfilter/src_movie.o:src_movie.c:(.text.unlikely+0x21b): undefined reference to `avformat_find_stream_info'
libavfilter/src_movie.o:src_movie.c:(.text.unlikely+0x2ff): undefined reference to `av_seek_frame'
libavfilter/src_movie.o:src_movie.c:(.text.unlikely+0x433): undefined reference to `av_find_best_stream'
libavfilter/src_movie.o:src_movie.c:(.text.unlikely+0x4c4): undefined reference to `avformat_match_stream_specifier'
libavfilter/src_movie.o:src_movie.c:(.text.unlikely+0x70): undefined reference to `avformat_close_input'
libavfilter/vf_signature.o:vf_signature.c:(.text+0x298c): undefined reference to `av_get_frame_filename'
libavfilter/vf_signature.o:vf_signature.c:(.text.unlikely+0x1d3): undefined reference to `av_get_frame_filename'
libavfilter/vf_subtitles.o:vf_subtitles.c:(.text.unlikely+0x22c): undefined reference to `avformat_open_input'
libavfilter/vf_subtitles.o:vf_subtitles.c:(.text.unlikely+0x271): undefined reference to `avformat_find_stream_info'
libavfilter/vf_subtitles.o:vf_subtitles.c:(.text.unlikely+0x2b6): undefined reference to `av_find_best_stream'
libavfilter/vf_subtitles.o:vf_subtitles.c:(.text.unlikely+0x6dd): undefined reference to `av_read_frame'
libavfilter/vf_subtitles.o:vf_subtitles.c:(.text.unlikely+0x889): undefined reference to `avformat_close_input'
collect2: error: ld returned 1 exit status
make: *** [ffbuild/library.mak:102: libavfilter/avfilter-6.dll] Error 1

What am I doing wrong? Am I missing something? Is this a linker-issue of some sort?

Change History (1)

comment:1 by Carl Eugen Hoyos, 7 years ago

Keywords: avfilter-6.dll removed
Resolution: invalid
Status: newclosed

Scripts - except current FFmpeg's configure - are not supported here.
Test a minimal configure line and reopen if it fails posting the tested configure line here.

Note: See TracTickets for help on using tickets.