[FFmpeg-devel] Binary compatibility for MinGW generated dlls

Reimar Döffinger Reimar.Doeffinger
Mon May 14 15:44:44 CEST 2007

On Mon, May 14, 2007 at 03:01:15PM +0200, Panagiotis Issaris wrote:
> Currently, when building new versions of libavcodec using MinGW, the
> generated dlls cannot replace the old ones without relinking the
> application.
> This is because the compiler generates the .def files, which contain all
> public symbols. GCC sorts these alphabetically and numbers them
> likewise. This means that if a symbol is added which is alphabetically
> not situated after all other preexisting symbols, the library will lose
> binary compatibility.
> PS: I am not very experienced in Windows related stuff, so, I might have
> overlooked other simpler or better solutions...

Can't you instruct the compiler to link only against the function names,
not the numbers?
At least when getting the function address dlopen-like you can choose if
you want to specify a function name or a number...

Reimar D?ffinger

More information about the ffmpeg-devel mailing list