| 337行目: | 337行目: | ||
<br> | <br> | ||
<code>rsync</code>コマンドを使用して、Raspberry Piのいくつかのルートディレクトリと同期する。<br> | <code>rsync</code>コマンドを使用して、Raspberry Piのいくつかのルートディレクトリと同期する。<br> | ||
rsync -avz --rsync-path="sudo rsync" --delete --rsh="ssh -p <ポート番号> -i <秘密鍵のフルパス>" <Raspberry Piのユーザ名>@<Raspberry Piのホスト名またはIPアドレス>:/lib ~/Program/Qt_Embedded/sysroot | |||
rsync -avz --rsync-path="sudo rsync" --rsh="ssh -p <ポート番号> -i <秘密鍵のフルパス>" <Raspberry Piのユーザ名>@<Raspberry Piのホスト名またはIPアドレス>:/lib ~/Program/Qt_Embedded/sysroot | rsync -avz --rsync-path="sudo rsync" --rsh="ssh -p <ポート番号> -i <秘密鍵のフルパス>" <Raspberry Piのユーザ名>@<Raspberry Piのホスト名またはIPアドレス>:/lib ~/Program/Qt_Embedded/sysroot | ||
rsync -avz --rsync-path="sudo rsync" --rsh="ssh -p <ポート番号> -i <秘密鍵のフルパス>" <Raspberry Piのユーザ名>@<Raspberry Piのホスト名またはIPアドレス>:/usr/include ~/Program/Qt_Embedded/sysroot/usr | rsync -avz --rsync-path="sudo rsync" --rsh="ssh -p <ポート番号> -i <秘密鍵のフルパス>" <Raspberry Piのユーザ名>@<Raspberry Piのホスト名またはIPアドレス>:/usr/include ~/Program/Qt_Embedded/sysroot/usr | ||
| 385行目: | 387行目: | ||
cd qtbase && mkdir build && cd build | cd qtbase && mkdir build && cd build | ||
../configure -release -opengl es2 -device <Raspberry Piのバージョン> \ | ../configure -release -opengl es2 -eglfs -device <Raspberry Piのバージョン> \ | ||
-device-option CROSS_COMPILE= | -device-option CROSS_COMPILE=/<GCC ARMツールチェーンのインストールディレクトリ>/bin/arm-linux-gnueabihf- \ | ||
-sysroot /home/<ユーザ名>/Program/Qt_Embedded/sysroot -opensource -confirm-license -make libs \ | -sysroot /home/<ユーザ名>/Program/Qt_Embedded/sysroot -opensource -confirm-license -skip qtscript -skip qtwayland -skip qtwebengine \ | ||
- | -nomake tests -make libs -pkg-config -recheck \ | ||
-L/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/lib/arm-linux-gnueabihf -I/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/include/arm-linux-gnueabihf \ | |||
-prefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5 -extprefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5 -v -no-use-gold-linker | |||
make -j | make -j $(nproc) | ||
make install | make install | ||
<br> | <br> | ||
| 408行目: | 412行目: | ||
-prefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5Pi -extprefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5Pi -hostprefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5 -v -no-use-gold-linker | -prefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5Pi -extprefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5Pi -hostprefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5 -v -no-use-gold-linker | ||
make -j | make -j $(nproc) | ||
make install | make install | ||
<br> | <br> | ||
ただし、SDKにネイティブのrccファイルが含まれていないため、rccファイルをSDKのbinディレクトリにコピーする。<br> | ただし、SDKにネイティブのrccファイルが含まれていないため、rccファイルをSDKのbinディレクトリにコピーする。<br> | ||
(Qtモジュールを使用するソフトウェアをビルドする場合、このrccバイナリが必要である)<br> | (Qtモジュールを使用するソフトウェアをビルドする場合、このrccバイナリが必要である)<br> | ||
cp ~/Program/Qt_Embedded/qtbase/bin/rcc ~/Program/Qt_Embedded/ | cp ~/Program/Qt_Embedded/qtbase/bin/rcc ~/Program/Qt_Embedded/Qt5/bin | ||
<br> | |||
ビルドしたQtライブラリを、Raspberry Piにデプロイする。<br> | |||
~/Program/Qt_Embedded/Qt5ディレクトリに存在する全てのファイルを、Raspberry Piの/usr/localディレクトリに同期させる。<br> | |||
rsync -avz --rsh="ssh -p <ポート番号> -i <秘密鍵のフルパス>" ~/Program/Qt_Embedded/Qt5 <Raspberry Piのユーザ名>@<Raspberry Piのホスト名またはIPアドレス>:/usr/local | |||
<br> | |||
Raspberry PiのリンカがQtライブラリを読み込むようにするため、以下のコマンドを実行する。<br> | |||
ただし、Raspberry Pi 2の場合、Qtソフトウェアの実行で問題が発生する時は、qt5_15.confファイルではなく、00-qt5_15.confファイルを作成する。<br> | |||
echo /usr/local/qt5_15/lib | sudo tee /etc/ld.so.conf.d/qt5_15.conf | |||
sudo ldconfig | |||
<br> | <br> | ||
上記の設定により、Raspberry Pi上において、Qt 5.15.2を使用できる。<br> | |||
<br><br> | <br><br> | ||