[FFmpeg-user] Linking ffmpeg libraries

Maziar Mehrabi maziar.mehrabi at gmail.com
Thu Nov 13 11:34:57 CET 2014


I am practising to learn about ffmpeg API by making small applications that
use ffmpeg libraries. So far I have successfully made simple applications
for codec conversion by simply including libavformat/avformat.h and
libswscale/swscale.h libraries into my project. Now I intend to make some
simple media streaming applications. I have been reading ffserver.c source
code to get ideas from it. The problem is that I cannot include libraries
such as network.h into my project. However avformat and avcodec could be
easily included. I looked into the usr/local/include/libavformat path and
noticed that it only contains three headers of libav into it (namely
avformat, avio and version). I manually copied network.h into this folder
but now I get the following error :

/usr/local/include/libavformat/network.h:27:20: fatal error: config.h: No
such file or directory

I suppose that error is because network.h has dependencies to config.h. So
now I searched for config.h and apparently there are plenty of files named
like this and I don't know where to copy them.
My question basically is that do I have to copy all headers into
usr/local/include/ path? Is it safe? Or how else can I include necessary
libraries into my project?
I am coding in C++ using Eclipse IDE and I use "extern "C" {}" to include
these libraries into my project. Besides this, I have also already set the
-l arguments in project properties. The problem is that is works for
avformat.h but not network.h.

Any help or guide would be highly appreciated.

Maziar Mehrabi,

More information about the ffmpeg-user mailing list