如何处理C(ffmpeg)库中的Header依赖项?

时间:2018-09-21 05:18:55

标签: c ffmpeg dependencies header-files

我正在尝试直接从FFMPEG调用函数。我已经成功运行了FFMPEG的Makefile。这是我的设置:

/ FFMPEG
/ MySimpleProject

在我的简单项目中

#include <stdio.h>
#include <stdlib.h>
#include "../ffmpeg/libavformat/avformat.h"

int main(int argc, char *argv[]) {
    av_register_all();
    return EXIT_SUCCESS;
}

但是当我尝试使用cc main.c进行编译时,我得到:

In file included from main.c:3:
./../ffmpeg/libavformat/avformat.h:319:10: fatal error: 
'libavcodec/avcodec.h' file not found

我得到这个的原因是因为FFMPEG中的#include看起来像这样:

#include "libavcodec/avcodec.h"
...

,它不反映实际的文件结构。相对路径为#include "../libavcodec/avcodec.h",当我这样做时,编译器会在下一个依赖项上出错。我该如何解决这种依赖性疯狂问题? FFMPEG中必须有一些设置,甚至允许它们忽略相对路径。

0 个答案:

没有答案