编译头文件包含问题

想利用ffmpeg的库文件开发程序,在编译的时候遇到了一个问题,自己所引用的头文件里面包含了另外一个文件夹内的头文件,这样导致了编译没法找到对应的头文件
使用的编译指令如下
mipsel-openwrt-linux-gcc -L. -lavformat -L. -lavutil -L. -lavcodec -L. -lavfilter -I ./libavdevice -I ./libavcodec -I ./libavutil -I ./libavformat -I ./libavfilter -I ./libavresample -I ./libswresample -I ./libswscale -o ffmpeg_streamer ffmpeg_streamer.c
报错如下 
In file included from ffmpeg_streamer.c:18:0:
libavformat/avformat.h:197:32: fatal error: libavcodec/avcodec.h: No such file or directory
 #include "libavcodec/avcodec.h"
因为头文件之间互相引用,但是希望不要改动源码,比如增加../  相对路径可以解决这个问题,是否有编译指令可以解决这个问题
附件是文件目录结构
屏幕快照_2016-08-22_下午10.57_.56_.png
已邀请:

xzmu - 10w

赞同来自:

你的这个引用太奇怪了吧?-I和-L的目录都是怎么搞的啊。。。
 
不是应该先make install 到一个目录,然后,再-I到这个目录的include文件夹下么?
 
lib同理

glaring - IT男

赞同来自:

已经解决,设置-I. 包含当前路径就OK了,但是编译过程中遇到了库依赖的问题,还在继续填坑 ...

要回复问题请先登录注册