首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Qt引入第三方库(亲测Qt4和Qt5)

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

作者头像
看、未来
发布2020-08-26 10:46:29
发布2020-08-26 10:46:29
6.9K0
举报

这两天看老师发的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偶尔还是会说找不到库

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

1.
2.
3.
4.
5.
6.

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

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/02/11 ,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 通用方法:用代码写下去。
    • 方法二:采用Qt内设快捷方式
      • 有趣的是,在第三步跨向第四步时,会发现Qt4只能检索后缀为 .lib 的库文件,Qt5就没有这个限制了。
      • 以上为Windows链接库所用,linux没测过。
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档