[FFmpeg-trac] #282(build system:closed): undefined reference to `_avdevice_register_all'
FFmpeg
trac at avcodec.org
Tue Nov 20 22:44:10 CET 2012
#282: undefined reference to `_avdevice_register_all'
-------------------------------------+-------------------------------------
Reporter: KSHawkEye | Owner: michael
Type: defect | Status: closed
Priority: critical | Component: build
Version: git | system
Keywords: undefined | Resolution: invalid
reference avdevice_register_all | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Comment (by reimar):
Ugh.
Just read the documentation on the version-script option:
{{{
It is partially supported on PE platforms, which can use
version scripts to filter symbol
visibility in auto-export mode: any symbols marked local in the
version script will not be exported.
}}}
That seems to indicate that it ignores which symbols are marked as
"global".
At the same time, while not documented, it seems like --export-all-symbols
does not override the "local" settings in the version file, so adding that
might indeed be a workaround (though the whole behaviour seems broken to
me).
However that brings me to another point, that I think the libSDL/utvideo
build systems are broken.
I presume you link against a static build of these libraries.
However, when building static libraries they should not mark those
functions as "dllexport", as the name says it is supposed to be for when
you build DLLs.
You certainly don't want these functions to be exported when you just use
the functionality.
For example, if the SDL DLL was build statically against utvideo (of
course not the case, just an example) it would end up exporting the
utvideo functions, which would then cause symbol collisions if an
application would try to use both the SDL DLL and a utvideo DLL.
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/282#comment:31>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list