• Linux下打包发布Qt应用程序


    Linux下打包发布Qt应用程序

    Linux下打包发布Qt应用程序

    Linux下使用Qt进行开发的程序,如果想要在其他搭载Linux系统的主机上运行则需要将要发布的Qt程序依赖的一些动态链接库一起打包。具体做法如下:

    1. 编译文件

    在Qt中使用release的方式编译出可执行文件,然后新建一个文件夹,将可执行文件拷贝进去备用。

    2.巧用脚本文件

    这里以Server可执行文件为例。
    在新建的文件夹下,新建两个脚本文件:

    新建文件

    1. pack.sh
    2. Server.sh 这个脚本文件名必须和要发布的程序名字相同,所以为 Server
      新建文件后,文件夹包含内容如下:
      文件夹内容

    添加脚本

    pack.sh文件里添加以下内容:

    #!/bin/sh  
    exe="Server" #你需要发布的程序名称
    des="/home/mrzhong/server" #创建文件夹的位置
    deplist=$(ldd $exe | awk  '{if (match($3,"/")){ printf("%s "),$3 } }')  
    cp $deplist $des
    
    

    然后向Server.sh文件里添加以下内容(内容不需要更改):

    #!/bin/sh  
    appname=`basename $0 | sed s,.sh$,,`  
    dirname=`dirname $0`  
    tmp="${dirname#?}"  
    if [ "${dirname%$tmp}" != "/" ]; then  
    dirname=$PWD/$dirname  
    fi  
    LD_LIBRARY_PATH=$dirname  
    export LD_LIBRARY_PATH  
    $dirname/$appname "$@"
    
    

    执行脚本

    终端进入文件夹目录,运行:

    ./pack.sh
    
    

    可执行文件依赖的链接库将会拷贝到所在的目录,如图:
    alt

    在其他主机里面使用和可执行文件同名的脚本文件(这里为Server.sh)运行程序即可。

    打包发布

    最后将这个文件打包后拷贝到其他主机上即可运行。

  • 相关阅读:
    设计模式之单例模式
    Java反射之调用内部类
    Java反射之修改常量值
    myBatis之入门示例
    eclipse创建maven工程
    java核心卷轴之集合
    java核心卷轴之泛型程序设计
    sublime常用快捷键
    sublime使用package control安装插件
    sublime使用技巧之添加到右键菜单、集成VI
  • 原文地址:https://www.cnblogs.com/spfanlost/p/13764257.html
Copyright © 2020-2023  润新知