linux qt 打包安装程序

59 篇文章 3 订阅

一、Linux下qt程序动态打包步骤:

    1.从可运行程序的文件中拿出可执行文件;

    2.终端下 使用ldd命令查看需要的连接库;

    3.把ldd查询到的所有需要的库导出;

         提供一个脚本将ldd打印出来的依赖库复制到指定路径:

[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. #!/bin/sh    
  2.     
  3. exe="test" #发布的程序名称    
  4. des="/home/hejianglin/QtProject/build-test-Desktop-Release/ReleaseTest" #你的路径    
  5.     
  6. deplist=$(ldd $exe | awk  '{if (match($3,"/")){ printf("%s "),$3 } }')    
  7. cp $deplist $des   
说明:exe :要发布的程序名称 des:指定复制的路径 


    4.编写.sh文档,书写环境变量,或者在/etc/profile文件中书写环境变量:export $LD_LIBRARY_PATH=$LD_LIBRARY_PATH + 链接库目录,在运行source /etc/profile,重启电脑即可生效。

[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. #!/bin/sh    
  2. appname=`basename $0 | sed s,\.sh$,,`    
  3.     
  4. dirname=`dirname $0`    
  5. tmp="${dirname#?}"    
  6.     
  7. if [ "${dirname%$tmp}" != "/" ]; then    
  8. dirname=$PWD/$dirname    
  9. fi    
  10. LD_LIBRARY_PATH=$dirname    
  11. export LD_LIBRARY_PATH    
  12. $dirname/$appname "$@"    


    5.把所用到的库,可执行文件,.sh文件放到同一目录下;

    6.修改脚本权限,执行脚本,同时可以执行可执行程序。

     

[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. chmod +x test.sh  



二、在Linux的桌面上创建快捷方式或启动器

一个桌面快捷方式是由内含该APP元信息(例如,app的名字,启动命令或者图标位置等)的.desktop文件所表示的。

桌面快捷方式文件放置于/usr/share/applications或者~/.local/share/applications处。

前一个目录存储的桌面快捷方式每个用户都可以使用,而后一个目录则含有仅仅为特定用户创建的快捷方式。

    方法1:利用右键创建启动器,来创建可执行程序的快捷方式

    方法2:利用创建.desktop创建桌面快捷方式

    一个典型的.desktop文件如下所示。

[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. [Desktop Entry]     
  2.   
  3.     Encoding=UTF-8 Version=1.0    
  4.     Type=Application    
  5.     Terminal=false    
  6.     Icon[zh_CN]=gnome-panel-launcher    
  7.     Name[zh_CN]=scada    
  8.     Exec=/home/test/scada    
  9.     Name=scada    
  10.     Icon=gnome-panel-launcher   

 参考:http://blog.csdn.net/hjl_1991/article/details/50365927

http://blog.csdn.net/u011822862/article/details/46816895?locationNum=4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值