zoukankan      html  css  js  c++  java
  • 树莓派下,打包发布能在树莓派中运行的Qt5程序和其运行环境

    目标:把Qt程序部署到新的树莓派中。

    平台:树莓派

    工作:把Qt程序和运行环境分别打包

    一、程序打包过程如下,仅供参考:

    1.新建文件夹A,把程序拷贝到文件夹中。

    2.使用ldd获取依赖关系,并复制到文件夹A。脚本如下:

    #!/bin/bash
    exe="/home/pi/pack/exe" des="/home/pi/pack/" deplist=$(ldd $exe | awk '{if (match($3,"/")){printf("%s "),$3}}') cp $deplist $des

    注意:部分文件和运行环境包中文件是一样的,可以自己过滤掉

    3.在文件夹A中,新建运行程序的同名sh脚本,如下:

    #!/bin/bash
    #获取和脚本同名的程序名称和路径
    path=$(cd 'dirname ${BASH_SOURCE}';pwd)
    name=$(basename $BASH_SOURCE)
    name=${name%.*}
    #设置Qt5程序运行环境变量
    export LD_LIBRARY_PATH=$path:/usr/local/qt5pi/lib
    export QT_QPA_PLATFORM=eglfs
    export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/local/qt5pi/plugins/
    export QT_QPA_FONTDIR=/usr/local/qt5pi/lib/fonts
    export QML_IMPORT_PATH=/usr/local/qt5pi/qml
    export QML2_IMPORT_PATH=/usr/local/qt5pi/qml
    export QTDIR=/usr/local/qt5pi
    #打开Qt插件调试信息,方便查看插件加载错误
    export QT_DEBUG_PLUGINS=1
    $path/$name --platform xcb

     部署好运行环境后,双击或者终端运行sh脚本。

    二、打包运行环境

    把/usr/local/qt5pi压缩成包,部署到新的树莓派中,同样的目录。(可以根据需要精简,如果不在乎大小,可以不做任何变化)

  • 相关阅读:
    数据表的水平拆分
    高性能网站架构
    文本框内容改变触发事件
    树莓派3B(1)- Raspberry Pi 3B 安装系统并联网
    一年经验Java程序员面经小记
    Windows系统安装总结
    树莓派3B(2)- 配置多个wifi,自动寻找可用网络
    Centos7 Apache实现Http访问SVN资源库
    Centos7搭建svn服务
    读《重构 改善既有代码的设计》有感
  • 原文地址:https://www.cnblogs.com/SamFang/p/14455446.html
Copyright © 2011-2022 走看看