今天将qt的程序打包在客户机器上部署,弹出如下提示:

Got keys from plugin meta data ("xcb")
Cannot load library /home/lc1/Desktop/comTool/bin/platforms/libqxcb.so: (/usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5: version `Qt_5_PRIVATE_API' not found (required by /home/lc1/Desktop/comTool/bin/platforms/libqxcb.so))
QLibraryPrivate::loadPlugin failed on "/home/lc1/Desktop/comTool/bin/platforms/libqxcb.so" : "Cannot load library /home/lc1/Desktop/comTool/bin/platforms/libqxcb.so: (/usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5: version `Qt_5_PRIVATE_API' not found (required by /home/lc1/Desktop/comTool/bin/platforms/libqxcb.so))"
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

这种错误只会在linux或类linux操作系统上出现,Windows上不会出现。因为Windows机器不需要qxcb库。造成这种错误的原因是:1):部署软件时,没有将Qt插件文件下的platforms中的libqxcb.so库部署上去。2): 原因1)中的libqxcb.so库部署了,但是原因 1)中的libqxcb.so库又依赖了其它的Qt库,而这些依赖的库本应该从你提供的安装包的库目录查找的,现在却是从其它地方找的,如:从上面可以看到libqxcb.so依赖了libQt5XcbQpa.so.5,这个库本应该在你安装目录下,比如:你安装目录下有lib文件夹,且lib文件夹下有个libQt5XcbQpa.so.5,但从上面的提示可以看出,程序搜索的是/usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5,而不是你安装包目录下的lib文件夹下的libQt5XcbQpa.so.5,虽然说都是libQt5XcbQpa.so.5,但版本不一致可能会导致出现加载库失败,比如:你部署机器的linux系统自带的Qt(一般是因为linux有图形界面,而图形界面用到了Qt,所以对于图形界面的linux系统一般会有些Qt的库)版本是5.6.1,而你部署的程序是用其它版本开发的,比如:Qt 5.14.1,这就会导致不兼容而加载库失败。

解决方法如下:

1):在你程序需要部署的目录即安装包目录下新建platforms目录。

2):到你开发的机器上的Qt安装目录下的plugins/platforms目录下找到libqxcb.so,并将其拷贝到步骤1)中的platforms目录。

3):执行ldd libqxcb.so 以便找出libqxcb.so依赖的所有Qt库。

4):将步骤3)中找到的依赖库中所有和Qt有关的库拷贝到你安装包下的库目录下,如:

 安装包目录/lib 

然后建立一些库的链接。

经过这四步骤后,目录应该如下;

5):执行:

sudo /etc/profile

在文件的末尾加入:

 export LD_LIBRARY_PATH=LD_LIBRARY_PATH:安装包目录/lib 

注意:有部分linux在/etc/profile中设置LD_LIBRARY_PATH不起作用,对这部分linux请自行查阅相关手册。

6):重启linux。

7):执行如下命令:

echo $LD_LIBRARY_PATH

如果输出中包含了 “ 安装包目录/lib”目录,则5)步骤配置成功

如果上面都没问题,则部署的程序应该能跑起来。

Can not load “libqxcb.so”相关推荐

  1. 【Qt】Qt发布程序时,报错: could not find or load the Qt platform plugin xcb

    问题描述 Qt程序在发布时,报错: This application failed to start because it could not find or load the Qt platform ...

  2. This application failed to start because it could not find or load the Qt platform plugin xcb in

    This application failed to start because it could not find or load the Qt platform plugin "xcb& ...

  3. Linux下解决发布Qt程序报错:it could not find or load the Qt platform plugin “xcb” in “”

    简述 用Qt5.8版本在ubuntu16.04版本下编写Qt应用程序,生成release版本并打包,到另一台无Qt环境的linux系统中运行. 网上通常是按以下几个步骤进行: 1.生成release程 ...

  4. Ubuntu18.04下解决Qt出现qt.qpa.plugin:Could not load the Qt platform plugin “xcb“问题

    Ubuntu18.04下解决Qt出现qt.qpa.plugin:Could not load the Qt platform plugin "xcb"问题 问题描述 定位问题 解决 ...

  5. python打包android的app,出现 Could not load the Qt platform plugin “xcb“的解决方法

    问题描述: pytorch代码调试过程出现: QObject::moveToThread: Current thread (0x1186a80) is not the object's thread ...

  6. 出现“qt.qpa.plugin: Could not load the Qt platform plugin “xcb“ in ‘ ’even though it was found

    出现"qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in ' 'even though it wa ...

  7. Ubuntu20.04下解决Qt出现qt.qpa.plugin:Could not load the Qt platform plugin “xcb“ 问题

    问题描述 python调用matplotlib.pyplot库进行图形绘制时弹出错误提示: qt.qpa.plugin: Could not load the Qt platform plugin & ...

  8. 关于qt.qpa.plugin: Could not load the Qt platform plugin “xcb“的问题

    今天在运行代码的时候出现了以下错误,经查找资料,找到了解决方法. 错误如下: QFactoryLoader::QFactoryLoader() checking directory path &quo ...

  9. 出现qt.qpa.plugin: Could not load the Qt platform plugin “xcb“,nsight computer打不开的问题

    输入nv-nsight-cu或者ncu-ui后,最开始是等待一段时间没有反应,于是我重新安装了新版本的nsight computer:在root下输入sudo apt install nsight-c ...

最新文章

  1. 【驱动】ubuntu安装内核头文件
  2. echo等追加到文件末尾
  3. Django模板系统
  4. Qt中的QBoxLayout
  5. 树的特征能否复用问题
  6. poj 3258 River Hopscotch 【二分】
  7. Holedox Moving
  8. 使用Log4j为项目配置日志输出应用详细总结及示例演示.
  9. 大学电路题目怎么搜_长沙理工大学2020真题浅析
  10. 但有很多的HTML5朋友
  11. Unity uGui RawImage 渲染小地图
  12. 前端工程师凭什么这么值钱?
  13. CentOS 升级现有PHP版本
  14. android大智慧安装目录,大智慧文件目录
  15. 金蝶K3销售价格控制模块探讨
  16. 世界上公认最快的学习法 - 弗曼学习法
  17. Ensembl数据库简介
  18. 计算机一级B考试总结500字,第一次月考总结与反思500字
  19. 云计算时代迎接挑战方能脱颖而出
  20. matlab s域转时域,时域 S域 Z域转换

热门文章

  1. 来来来,送开发板了。
  2. 为什么8位数据范围是-128到127,而不是-127到128?
  3. android 分区修改工具_Android刷机包制作工具与教程-大神必备
  4. fpga如何约束走线_如何正确的约束时钟—Vivado优化到关键路径
  5. oracle gather trace,Oracle 11g新SQL Trace 10046方法
  6. 仿某某网站模板thinkphp_西安网站建设到底是什么?
  7. 20220202--CTF刷题MISC方向--第7题--编码
  8. 宝塔配置mysql host_阿里云安装宝塔以及mysql配置
  9. python猫狗大战讲解_tensorflow实现猫狗大战(分类算法)
  10. 移除VS解决方案中的TFS版本控制