[转载] linux系统中编写和运行qt程序

[复制链接] [提交至百度]
查看: 57|回复: 0

  在线 

新浪微博达人勋


扫一扫,手机继续看本帖!
已在线0天15小时50分
发表于 2016-12-20 23:32:57 | 显示全部楼层 |阅读模式

立即注册NG,提升编程能力,成为下一个神!

您需要 登录 才可以下载或查看,没有帐号?加入NG 新浪微博登陆

x
linux系统中编写和运行qt程序的方法,首先准备好程序中需要使用的资源,库和插件...

    比如你的可运行程序取名叫作panel,那把你的panel,那些libQt*.so.4和libQt*.so.4.6.0(链接和共享库都要)放在同一目录下(也可以不同,只要小小修改下shell文件).plugins就不多说了。

    在程序的同目录下,新建一個空文档,取名panel.sh (文件名与程序名同名,扩展名为sh,shell文件)。

    在panel.sh中原封不动的写入以下语句:

[AppleScript] 纯文本查看 复制代码
#!/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 $*

保存文件,退出。在终端給文件+x属性: 切换到程序的目录,输入

    chmod +x panel.sh
    然后运行shell文件就行了(确保panel程序具备X属性),它会自动更改环境变量,运行程序。
    如果要调试shell文件,只需要在终端输入:
    sh -x panel.sh
    这样就ok了。

关于plugins,有以下3种处理方法:
# Using qt.conf. This is the recommended approach since it provides the most flexibility.
# Using QApplication::addLibraryPath() or QApplication::setLibraryPaths().
# Using a third party installation utility or the target system's package manager to change the hard-coded paths in theQtCore library.
第二种方法很简单。qt.conf的方法也不错.看看这个:
[AppleScript] 纯文本查看 复制代码
Entry Default Value
Prefix QCoreApplication::applicationDirPath()
Documentation doc
Headers include
Libraries lib
Binaries bin
Plugins plugins
Data .
Translations translations
Settings .
Examples .
Demos .



最简单的qt.conf文件這樣寫就好了:(插件在当前文件夹下的plugins文件夹里)

[AppleScript] 纯文本查看 复制代码
[Paths]
Prefix = .
Plugins = plugins

[NG]

 

                                                  


楼主的其他热帖
[Python讨论区] Puthon程序员的不同级别进化
[其他语言讨论] 汇编语言初步了解
[其他语言讨论] linux系统中编写和运行qt程序
[其他语言讨论] qt与mfc界面库的全面比较
[其他语言讨论] Qt编程中出现No such file or directory
[C/C++讨论区] c语言关键字和标识符详解




上一篇:qt与mfc界面库的全面比较
下一篇:汇编语言初步了解
nextgod.com我是下一个神!
回复
【点击@我】

使用道具 举报

     
您需要登录后才可以回帖 登录 | 加入NG 新浪微博登陆

本版积分规则

快速回复 返回列表 客服中心 搜索 官方QQ群

Copyright  ©2015-2016    Powered by Discuz!& NG论坛   ( 豫ICP备15026783号 )  | |   NG已运行

快速回复 返回列表 客服中心 搜索 官方QQ群
  NG已运行| |