【Qt】ubuntu上でQtプログラムをパッケージングし、Qt環境に依存しなくてもよい

2117 ワード

ブログ参照


https://blog.csdn.net/theArcticOcean/article/details/68069964 https://blog.csdn.net/hjl_1991/article/details/50365927

しんそくてつづき


1、コンパイル先releaseバージョンのQtプログラム2、パッケージフォルダmkdir release 3の作成、フォルダに入り、パッケージするプログラムをファイル中のcd release cpコンパイル先プログラムの全パスにコピーする.4、実行スクリプトlddを作成する.sh(本質はlddコマンドを使用して、プログラムリンクのライブラリを表示し、パッケージフォルダにコピーする)権限chmod+x lddを変更することを覚えておいてください.sh
#! /bin/bash
EXE='desktopwidget' # 
PWD=`pwd` # 
files=`ldd $EXE | awk '{ if(match($3,"^/"))printf("%s "),$3 }'`
cp $files $PWD

5、実行時のスクリプト(本質は環境変数LD_LIBRARY_PATHを構成する)実行スクリプトの名前は:プログラム名+.sh;例えばdesktopwidget.sh権限chmod+x desktopwidgetを変更することを覚えています.sh
#!/bin/sh  
appname=`basename $0 | sed s,\.sh$,,`  # \ .sh 

dirname=`dirname $0`  
tmp="${dirname#?}"  

# 
if [ "${dirname%$tmp}" != "/" ]; then  
dirname=$PWD/$dirname  
fi  

LD_LIBRARY_PATH=$dirname  
export LD_LIBRARY_PATH  
$dirname/$appname "$@"  #"$@"