zoukankan      html  css  js  c++  java
  • 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

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

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

  • 相关阅读:
    mongo数据更新(修改器)
    mongo数据排序和分页显示
    mongodb数据操作(CRUD)
    mongodb配置和基本操作
    lua语法基本
    awk常见基本使用
    sed命令常见用法
    Python(面向对象编程4——继承顺序、封装)
    Python(面向对象3 ——实例)
    Python(面向对象编程——2 继承、派生、组合、抽象类)
  • 原文地址:https://www.cnblogs.com/wiessharling/p/4223301.html
Copyright © 2011-2022 走看看