Qt程序打包发布——插件发布

       继上一篇的动态发布之后,还是由于项目需求的变动,在原有基础上增加了Mysql的使用,开发过程中借鉴了网上许多编译Mysql的例子,顺利编译通过,不过在最后发布包时,又将我困扰住,在此记录发布过程。

      参考官方文档:Qt插件的搜索路径是被硬编码到QtCore库中的。在默认的情况下,第一个插件的搜索路径将被硬编码到/path/to/Qt/plugins下。但是,如果依赖多个插件的话,例如JPEG图像格式插件或SQL驱动程序插件。如果想确保在应用程序中找到所依赖的每一个插件,则每种类型的插件必须位于分发目录中的特定子目录(如imageformats或sqldrivers)中。

根据官网介绍,将依赖的libqsqlmysql.so动态库放到了plugins/sqldrivers下进行发布,如下图所示:


结果,运行程序出错提示mysql驱动没有加载,导致mysql数据库打开失败;

此时心想,发布的过程都是按照官方文档(如何创建Qt插件)介绍来操作的,同时也去Qt的安装目录确认插件的目录结构以及文件没有问题,但为什么还是会出现驱动没有加载的问题呢?

出于kiss(keep it simple stupid)考虑,既然可执行程序的当前路径与plugins并列,而区分各个插件仅通过一级目录更简单一点,于是索性将sqldrivers目录拷贝到与可执行文件并列,然后执行,结果驱动加载成功,问题解决。



  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值