• Ubuntu下Qt项目的部署


    部署涉及到以下内容:

    1. 程序执行文件;

    2. 动态链接库;

    3. Qt的一些插件(plugins),例如图片插件(imageformats),数据库插件(sqldrivers);

    4. 其他资源文件,包括qss、Images、.qm文件等等;

    下面通过举例来说明部署问题:

    例子:

    SmartHome.sh

    #!/bin/sh
    cd /home/user/Project
    appname=`basename $0 | sed s,.sh$,,`
    dirname=`dirname $0`
    tmp="${dirname#?}"
    if [ "${dirname%$tmp}" != "/" ]; then
    dirname=$PWD/$dirname
    fi
    LD_LIBRARY_PATH=$dirname/lib
    export LD_LIBRARY_PATH
    export QT_PLUGIN_PATH=$dirname/plugins
    $dirname/$appname $*

    其中,可执行文件名与上述脚本文件名(SmartHome)是一样的。

    Step1:切换到可执行文件的目录下,例子中是cd /home/user/Project

    Step2:设置LD_LIBRARY_PATH 路径地址,程序会自动在这个地址下查找动态库、静态库;例子中的LD_LIBRARY_PATH设置为 $PWD/lib ;

    Step3:设置QT_PLUGIN_PATH 路径地址,程序会自动在这个地址下搜索插件,找不到插件的话会加载失败,例如图片不能显示,数据库无法打开等等问题就会随之而来!

    sudo apt-get install libphonon-dev libphonon4 phononbackend-gstreamer

    另外,项目的环境部署一般都是以脚本的形式进行,所以编写脚本很重要,这是我们都得去掌握的知识!

    项目中尽量不使用联网部署,需要联网部署时,也应该写在脚本当中。

  • 相关阅读:
    docker镜像管理基础
    docker的基础应用
    mysql基础
    策略模式
    简单工厂模式
    hystrix-go简介
    手把手带你使用 go-kit(option)
    手把手带你使用 go-kit(组件扩充,服务发现)
    手把手带你使用 go-kit(客户端直连)
    手把手带你使用 go-kit(基础篇)
  • 原文地址:https://www.cnblogs.com/wiessharling/p/4223301.html
Copyright © 2020-2023  润新知