我曾尝试使用FFMPEG编译C程序,但每次编译时都会在include语句中失败:
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
Gcc提供此错误消息:
libavcodec/avcodec.h: No such file or directory
我已经安装了FFMPEG并创建了共享库,但是当我在编译时尝试链接这些库时,我得到了同样的错误。
gcc main.c -L ffmpeg_build/lib -l ffmpeg_build/include/libavcodec/avcodec.h
我是否收到此错误,因为我错误地链接了库,还是存在其他问题?
这是我第一次使用别人的图书馆,所以如果我问一个愚蠢的问题,请原谅。
答案 0 :(得分:1)
小写-l
是用于指定库的链接器选项。它们可能看起来像libsomething.a
,并在链接器调用中变为-lsomething
。要将目录添加到标题搜索路径,请使用大写i -I
。
gcc main.c -L/some/path/ffmpeg_build/lib -I/some/path/ffmpeg_build/include