📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
| 364行目: | 364行目: | ||
fixQualifiedLibraryPathsが正常に動作しないため、提供されたスクリプトをダウンロードして実行する。<br> | fixQualifiedLibraryPathsが正常に動作しないため、提供されたスクリプトをダウンロードして実行する。<br> | ||
wget https://raw.githubusercontent.com/riscv/riscv-poky/master/scripts/sysroot-relativelinks.py | wget https://raw.githubusercontent.com/riscv/riscv-poky/master/scripts/sysroot-relativelinks.py | ||
chmod +x sysroot-relativelinks.py | chmod +x sysroot-relativelinks.py | ||
./sysroot-relativelinks.py ~/Program/Qt_Embedded/sysroot | ./sysroot-relativelinks.py ~/Program/Qt_Embedded/sysroot | ||
| 395行目: | 392行目: | ||
**: <code>linux-rasp-pi4-v3d-g++</code> | **: <code>linux-rasp-pi4-v3d-g++</code> | ||
<br> | <br> | ||
<u>Raspbian | <u>Raspbian OS 64ビットを使用している場合は、<code>device-option</code>オプションを以下のように記述する。</u><br> | ||
-device-option CROSS_COMPILE=/<GCC | -device-option CROSS_COMPILE=/<GCC ARMツールチェインのインストールディレクトリ>/bin/aarch64-linux-gnueabihf- | ||
<br> | <br> | ||
また、Qt 5.9以降は、<code>-no-use-gold-linker</code>オプションを追加する必要がある。<br> | また、Qt 5.9以降は、<code>-no-use-gold-linker</code>オプションを追加する必要がある。<br> | ||
| 409行目: | 406行目: | ||
*: <code>-device-option CROSS_COMPILE=/<GCC ARMツールチェーンのインストールディレクトリ>/bin/arm-linux-gnueabihf- \</code> | *: <code>-device-option CROSS_COMPILE=/<GCC ARMツールチェーンのインストールディレクトリ>/bin/arm-linux-gnueabihf- \</code> | ||
*: <code>-sysroot /home/<ユーザ名>/Program/Qt_Embedded/sysroot -opensource -confirm-license -skip qtscript -skip qtwayland -skip qtwebengine \</code> | *: <code>-sysroot /home/<ユーザ名>/Program/Qt_Embedded/sysroot -opensource -confirm-license -skip qtscript -skip qtwayland -skip qtwebengine \</code> | ||
*: <code>-nomake tests -make libs -pkg-config -no-use-gold-linker -v -recheck \</code> | *: <code>-nomake examples -nomake tests -make libs -pkg-config -no-use-gold-linker -v -recheck \</code> | ||
*: <code>-L/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/lib/arm-linux-gnueabihf -I/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/include/arm-linux-gnueabihf \</code> | *: <code>-L/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/lib/arm-linux-gnueabihf -I/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/include/arm-linux-gnueabihf \</code> | ||
*: <code>-prefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5 -extprefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5</code> | *: <code>-prefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5 -extprefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5</code> | ||
*: <br> | *: <br> | ||
*: <code> | *: <code>gmake -j $(nproc)</code> | ||
*: <code> | *: <code>gmake install</code> | ||
*: <br> | *: <br> | ||
*: 失敗した場合は、全てを削除するために以下のコマンドを実行する。<br> | *: 失敗した場合は、全てを削除するために以下のコマンドを実行する。<br> | ||
| 432行目: | 429行目: | ||
*: <code>-device-option CROSS_COMPILE=/<GCC ARMツールチェーンのインストールディレクトリ>/bin/arm-linux-gnueabihf- \</code> | *: <code>-device-option CROSS_COMPILE=/<GCC ARMツールチェーンのインストールディレクトリ>/bin/arm-linux-gnueabihf- \</code> | ||
*: <code>-sysroot /home/<ユーザ名>/Program/Qt_Embedded/sysroot -opensource -confirm-license -skip qtscript -skip qtwayland -skip qtwebengine \</code> | *: <code>-sysroot /home/<ユーザ名>/Program/Qt_Embedded/sysroot -opensource -confirm-license -skip qtscript -skip qtwayland -skip qtwebengine \</code> | ||
*: <code>-nomake tests -make libs -pkg-config -no-use-gold-linker -v -recheck \</code> | *: <code>-nomake examples -nomake tests -make libs -pkg-config -no-use-gold-linker -v -recheck \</code> | ||
*: <code>-L/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/lib/arm-linux-gnueabihf -I/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/include/arm-linux-gnueabihf \</code> | *: <code>-L/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/lib/arm-linux-gnueabihf -I/home/<ユーザ名>/Program/Qt_Embedded/sysroot/usr/include/arm-linux-gnueabihf \</code> | ||
*: <code>-prefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5 -extprefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5</code> | *: <code>-prefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5 -extprefix /home/<ユーザ名>/Program/Qt_Embedded/Qt5</code> | ||
*: <br> | *: <br> | ||
*: <code> | *: <code>gmake -j $(nproc)</code> | ||
*: <code> | *: <code>gmake install</code> | ||
*: <br> | *: <br> | ||
*: | *: <u>もし、ビルドしたQtライブラリにネイティブのrccファイルが存在しない場合は、rccファイルをQtライブラリのbinディレクトリにコピーする。</u><br> | ||
*: ( | *: (Qtライブラリを使用するソフトウェアをビルドする場合、このrccバイナリが必要である)<br> | ||
*: <code>cp ~/Program/Qt_Embedded/qtbase/bin/rcc ~/Program/Qt_Embedded/Qt5/bin</code> | *: <code>cp ~/Program/Qt_Embedded/qtbase/bin/rcc ~/Program/Qt_Embedded/Qt5/bin</code> | ||
<br> | <br> | ||
ビルドしたQtライブラリを、Raspberry Piにデプロイする。<br> | ビルドしたQtライブラリを、Raspberry Piにデプロイする。<br> | ||
~/Program/Qt_Embedded/Qt5ディレクトリに存在する全てのファイルを、Raspberry Piの/usr/localディレクトリに同期させる。<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アドレス>:/ | rsync -avz --rsh="ssh -p <ポート番号> -i <秘密鍵のフルパス>" ~/Program/Qt_Embedded/Qt5 <Raspberry Piのユーザ名>@<Raspberry Piのホスト名またはIPアドレス>:/home/<Raspberry Piのユーザ名>/InstallSoftware/Qt_5_x_x | ||
<br> | <br> | ||
Raspberry PiのリンカがQtライブラリを読み込むようにするため、以下のコマンドを実行する。<br> | Raspberry PiのリンカがQtライブラリを読み込むようにするため、以下のコマンドを実行する。<br> | ||
ただし、Raspberry Pi | ただし、Raspberry Pi 2の場合、Qtソフトウェアの実行で問題が発生する時は、Qt_5_x_x.confファイルではなく、00-Qt_5_x_x.confファイルを作成する。<br> | ||
echo / | # .profileファイルに設定する場合 | ||
export LD_LIBRARY_PATH="/home/<Raspberry Piのユーザ名>/InstallSoftware/Qt_5_x_x/lib:$LD_LIBRARY_PATH" | |||
# /etc/ld.so.conf.dディレクトリに配置する場合 | |||
echo /home/<Raspberry Piのユーザ名>/InstallSoftware/Qt_5_x_x/lib | sudo tee /etc/ld.so.conf.d/Qt_5_x_x.conf | |||
sudo ldconfig | sudo ldconfig | ||
<br> | <br> | ||