我想使用另一个目录中的函数。所以我把这条线放在最上面

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

跑了
 gcc filename.c

并得到这个错误
error: avcodec.h: No such file or directory

拼写正确,并且文件存在。为什么编译器认为该文件不存在?

最佳答案

使用:

#include <avcodec.h>    /* NOT "avcodec.h" */

然后:
gcc -I/include/file/path/where/avcodec.h/lives

如果使用-I,请使用尖括号,如果要基于相对于包含#include的文件的路径进行引用,请使用引号。

我会用:
#include <libavcodec/avcodec.h>

和:
$ gcc -I$HOME/ffmpeg/include ...

08-24 18:19