Add a section about C++ and extern "C" in the FAQ.
authorPanagiotis Issaris <takis.issaris@uhasselt.be>
Fri, 27 Jul 2007 13:40:02 +0000 (13:40 +0000)
committerPanagiotis Issaris <takis.issaris@uhasselt.be>
Fri, 27 Jul 2007 13:40:02 +0000 (13:40 +0000)
Originally committed as revision 9811 to svn://svn.ffmpeg.org/ffmpeg/trunk

doc/faq.texi

index 1aeb513..0cafd2f 100644 (file)
@@ -395,6 +395,14 @@ the whole libav*. If you wish, disable some parts with configure switches.
 You can also try to hack it and remove more, but if you had problems fixing
 the compilation failure then you are probably not qualified for this.
 
+@section I'm using libavcodec from within my C++ application but the linker complains about missing symbols which seem to be available.
+
+FFmpeg is a pure C project, so to use the libraries within your C++ application
+you need to explicitly state that you are using a C library. You can do this by
+encompassing your FFmpeg includes using @code{extern "C"}.
+
+See @url{http://www.parashift.com/c++-faq-lite/mixing-c-and-cpp.html#faq-32.3}
+
 @section I have a file in memory / a API different from *open/*read/ libc how do i use it with libavformat?
 
 You have to implement a URLProtocol, see libavformat/file.c in FFmpeg