Qt引入第三方库(亲测Qt4和Qt5)

这两天看老师发的FFMpeg的示例(先用的是Qt4),爆了一串找不到第三方库的文件,于是我决定找找原因。
然后让Qt4气的要死。。。。。
其中还有不少门路还没理清楚,水很深啊。

通用方法:用代码写下去。

老师的栗子就用代码写了,不过那个Qt4好像不认,给我气半死。

在pro文件中操作:

附加头文件包含目录

一般要编译链接第三方库时配置include目录
例如:

INCLUDEPATH += $$PWD/ffmpeg/include \
                $$PWD/sdl/include

$$PWD:当前路径的意思,这符号可不好搜啊
(要是愿意用绝对路径也是可以的,就是会比较慢一点)
可以用-L指定目录,-l指定库的名称(无需后缀,.lib,.a, .so都适用)(查别的文档时有看到-L和-l)

  • 相对路径中./可以省略
  • 路径中不允许出现空格

链接库

对于静态库(.lib, .a)以及动态库.so

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偶尔还是会说找不到库

方法二:采用Qt内设快捷方式

1.

在这里插入图片描述

2.

在这里插入图片描述

3.

在这里插入图片描述

4.

在这里插入图片描述

5.

在这里插入图片描述

6.

在这里插入图片描述

有趣的是,在第三步跨向第四步时,会发现Qt4只能检索后缀为 .lib 的库文件,Qt5就没有这个限制了。

我觉得吧,工欲善其事,必先利其器。还是用Qt5吧。

以上为Windows链接库所用,linux没测过。

发布了61 篇原创文章 · 获赞 3 · 访问量 1603

猜你喜欢

转载自blog.csdn.net/qq_43762191/article/details/104263658