网站首页 > 技术文章 正文
当查找plugins的时候,application首先会寻找当前executable下的plugins子目录。你要么通过把plugins完完整整拷贝到当前,要么就通过设置DESTDIR
除此之外你可以在代码层通过追加额外目录来让application进行查找,通过对QApplication::addLibraryPath() / QApplication::setLibraryPaths()
从Qt 5开始所有的Qt GUI程序都会要求一个事先Qt Platform Abstraction(QPA)层的插件(对于兼容性非常糟糕,保守的说法是只能适应用他来做开发的Qt版本,因此他的API change就是简简单单的minor release,比如5.1 -> 5.2,不会有第三位),在Linux/X11下这个插件的名字叫libqxcb.so(在Windows下脚qwindows.dll https://doc.qt.io/qt-5/windows-deployment.html).这个文件必须放在一个确定的目录(默认情况下是在你exe目录的platforms下 经典的Qt Sharedlibrary & Plugin部署关系图).除此之外比如你的程序用到JEPG或者SQL Dirver等plugin,也应该把他放在你的目录下比如imageformats, sqldrivers. 当然你也可以通过如下关系去调整这个search path.
传统的Qt Plugins的search path是被hard-code禁QtCore library. 默认情况下第一个查找路径是/path/to/Qt/plugins. 不过使用默认路径往往会有一些不方便的地方,比如权限问题等,因此你可能需要一些其他方法:
- 通过使用qt.conf来修改对应的目录和arguments Qt中qt.conf的作用
- 通过hard-code设置QApplication::addLibraryPath() / QApplication::setLibraryPaths()
- 通过使用第三方的安装工具来改变Qt Core中hard-code的paths
- 如果你的程序是Release,你的Plugin也应该是Release
- 上一篇: QT5 交叉编译
- 下一篇: ubuntu24.04 qt6安装记录
猜你喜欢
- 2025-01-07 推荐一款支持40+通讯协议的强大工业调试软件
- 2025-01-07 2024年windows原生应用用什么框架开发?
- 2025-01-07 基于跨平台的实时数据处理系统的设计
- 2025-01-07 一文分析QtCreator中MSVC编译套件
- 2025-01-07 C++Qt开发——事件处理函数
- 2025-01-07 Qt开发——NotePad实例开发
- 2025-01-07 解决Linux 下QT Creator 无法输入中文
- 2025-01-07 (1) 安装配置 pyqt5(windows),使用designer设计工具
- 2025-01-07 Linux平台上的PHP IDE盘点
- 2025-01-07 Ubuntu 24.04 解决运行 Flameshot 报错:Unable to capture screen
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)