(Linuxプラットフォーム)Qtによってコンパイルされたプログラムは、Qtがインストールされていない他のコンピューターでどのように実行されますか?この記事で答えを説明します
プロジェクトをコンパイルする
ここでは、公式ルーチンをターゲットプロジェクトとして採用し、プロジェクトをコンパイルRelease
する。
コンパイルが完了すると、プログラムは自動的に実行され(下の図を参照)、実行可能ファイルの場所(プロジェクトのビルドディレクトリにあります)を見つけます。
実行可能ファイルを個別にコピーして、空のフォルダに入れます。
現在、ファイルを実行することはできません。
Qtの環境変数を構成する
を開き~/.bashrc
、最後にQt環境変数を追加します(独自のQtディレクトリに従って設定します)
#配置Qt环境变量
export PATH=$PATH:/opt/Qt5.12.9/5.12.9/gcc_64/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/Qt5.12.9/5.12.9/gcc_64/lib
export QT_PLUGIN_PATH=$QT_PLUGIN_PATH:/opt/Qt5.12.9/5.12.9/gcc_64/plugins
export QML2_IMPORT_PATH=$QML2_IMPORT_PATH:/opt/Qt5.12.9/5.12.9/gcc_64/qml
保存後、端末に入力するsource ~/.bashrc
か、パソコンを再起動して有効にしてください。
linuxdeployqtをダウンロード
コンパイルされたlinuxdeployqt-x86_64.AppImage
アプリケーションアクセスします
。ダウンロードアドレス:https ://github.com/probonopd/linuxdeployqt/releases
linuxdeployqtを実行します
実行可能ファイルに設定し、同時にディレクトリlinuxdeployqt-x86_64.AppImage
にコピーします/usr/local/bin
。ちなみに、同じ名前の名前を変更します。
linuxdeployqt app -appimage
(アプリは実行可能ファイルです)を使用してパッケージ化し、
初めて失敗しました。ubuntuが付属していることがわかりましたqmake
が、それは単なる空のシェルでした。手動でqmake
パスを変更する必要があります。
このファイルを変更/usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf
します(独自のQtディレクトリに従って設定します)。
/opt/Qt5.12.9/5.12.9/gcc_64/bin
/opt/Qt5.12.9/5.12.9
いくつかのエラーがまだ報告されていますが、再度実行してくださいlinuxdeployqt app -appimage
。ただし、使用には影響しません。
この時点で、多くのライブラリファイルがパッケージディレクトリに追加されており、実行可能ファイルもスムーズに実行できます(Qtがインストールされていない他のLinuxシステムでも実行できます)。
Linuxディストリビューションシステムはさまざまであるため、ubuntuでコンパイルされたQtプログラムは、同じubuntuシステムであっても、必ずしも他のディストリビューションで実行されるとは限りません。16.04でコンパイルしたプログラムは、他の16.04システム(Qtがインストールされていない)で実行できますが、14.04では実行できません。