把qt寫的程式整理好,生成release版本。
利用下面的copylib.sh指令碼檔案,拷貝release版本的依賴庫。
把/usr/lib/arm-linux-gnueabihf/qt5/plugins/platforms拷貝到release所在資料夾(建議單獨拿出來release版本的程式)
找出platforms中libqxcb.so的依賴庫
把2,4產生的依賴庫放在一起,然後放release版本軟體,然後放platforms資料夾。
然後執行一次第二個指令碼。
開始移植,若無許可權,記著用chmod a+x *來改變許可權,並且執行的是第二個指令碼,而不是release版本的軟體名。
#!/bin/bash
libdir=$pwd
"/lib"
target=$1
lib_array=($(ldd $target | grep -o "/.*" | grep -o "/.*/[^[:space:]]*"))
$(mkdir $libdir)
for variable in$do
cp "$variable"
$libdir
done
dirname=`dirname $0
`tmp="$"
if [ "$" != "/" ]; then
dirname=$pwd/$dirname
fild_library_path=$dirname
export ld_library_path
使用靜態庫的程式,編譯過release版本的程式之後是不需要把靜態庫帶著的。
利用qtlinguist做的多語言,要把*.qm檔案帶著。
資源檔案是不需要帶著的。
Linux下QT程式打包
3 步驟 linuxdeployqt 參考qtcreate使用release版本編譯 從可執行程式的檔案中拿出可執行檔案,例 umarm 例 ldd umarm bin sh exe umarm 你需要發布的程式名稱 des home junion desktop bin 建立資料夾的位置 depl...
Linux下Qt程式的打包發布
程式以test為例 這裡提供乙個指令碼將ldd列印出來的依賴庫複製到指定路徑 bin sh exe test 發布的程式名稱 des home hejianglin qtproject build test desktop release releasetest 你的路徑 deplist ldd e...
Linux下Qt程式的打包發布
這裡提供乙個指令碼將ldd列印出來的依賴庫複製到指定路徑 plain view plain copy bin sh exe test 發布的程式名稱 des home hejianglin qtproject build test desktop release releasetest 你的路徑 d...