这两天看老师发的FFMpeg的示例(先用的是Qt4),爆了一串找不到第三方库的文件,于是我决定找找原因。 然后让Qt4气的要死。。。。。 其中还有不少门路还没理清楚,水很深啊。
通用方法:用代码写下去。
代码语言:javascript复制老师的栗子就用代码写了,不过那个Qt4好像不认,给我气半死。
在pro文件中操作:
附加头文件包含目录
一般要编译链接第三方库时配置include目录 例如:
代码语言:javascript复制INCLUDEPATH = $$PWD/ffmpeg/include
$$PWD/sdl/include
$$PWD:当前路径的意思,这符号可不好搜啊 (要是愿意用绝对路径也是可以的,就是会比较慢一点) 可以用-L指定目录,-l指定库的名称(无需后缀,.lib,.a, .so都适用)(查别的文档时有看到-L和-l)
- 相对路径中./可以省略
- 路径中不允许出现空格
链接库
对于静态库(.lib, .a)以及动态库.so
代码语言:javascript复制LIBS = $$PWD/ffmpeg/lib/avcodec.lib
$$PWD/ffmpeg/lib/avdevice.lib
$$PWD/ffmpeg/lib/avfilter.lib
$$PWD/ffmpeg/lib/avformat.lib
$$PWD/ffmpeg/lib/avutil.lib
$$PWD/ffmpeg/lib/postproc.lib
$$PWD/ffmpeg/lib/swresample.lib
$$PWD/ffmpeg/lib/swscale.lib
$$PWD/sdl/lib/libSDL2.a
- 以上的办法通用,不过Qt4偶尔还是会说找不到库