📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

 
(同じ利用者による、間の7版が非表示)
77行目: 77行目:
|+ 表. Raspberry PiとLTO(Link Time Optimization)フラグの関係
|+ 表. Raspberry PiとLTO(Link Time Optimization)フラグの関係
|-
|-
! style="background-color:#00ffff;" | Raspberry Piの種類
! style="background-color:#66ccff;" | Raspberry Piの種類
! style="background-color:#00ffff;" | LTO(Link Time Optimization)フラグ
! style="background-color:#66ccff;" | LTO(Link Time Optimization)フラグ
|-
|-
| Raspberry Pi Zero/W/WH<br>Raspberry Pi 1 Model A / B / A+ / B+ || -march=armv6 -mfloat-abi=hard -mfpu=vfp
| Raspberry Pi Zero/W/WH<br>Raspberry Pi 1 Model A / B / A+ / B+ || -march=armv6 -mfloat-abi=hard -mfpu=vfp
227行目: 227行目:
| OpenALオーディオ || libopenal-data libopenal1 libopenal-dev libsndio7.0 libsndio-dev ||
| OpenALオーディオ || libopenal-data libopenal1 libopenal-dev libsndio7.0 libsndio-dev ||
|-
|-
| データベース || unixodbc-dev (ODBC)<br>libsqlite3-dev (SQLite)<br>libpq-dev(PostgreSQL)<br>libmariadb-dev(MariaDB / MySQL)
| FFmpeg ||
|
* libavcodec-dev : オーディオ・ビデオのコーデック機能
* libavformat-dev : メディアコンテナフォーマットの処理
* libavutil-dev : FFmpegの共通ユーティリティ機能
* libswscale-dev : 画像のスケーリングと色空間変換の処理
* libswresample-dev : オーディオのリサンプリング機能
* libavdevice-dev : デバイスからのメディア入出力をサポート
<br>VAAPIサポート (ハードウェアアクセラレーション) を有効にする場合:<br>libva-dev libdrm-dev
||
|-
| データベース || unixodbc-dev (ODBC)<br>libsqlite3-dev (SQLite)<br>libpq-dev(PostgreSQL)<br>libmariadb-dev(MariaDB / MySQL) ||  
|-
|-
| プリンタ || libcups2-dev ||
| プリンタ || libcups2-dev ||
1,104行目: 1,113行目:
<br>
<br>
この時、以下に示すファイルを編集する。<br>
この時、以下に示すファイルを編集する。<br>
これにより、ターゲットが存在する場合のみ依存関係を追加するようになる。<br>
  vi /<Qt 6のソースコードがあるディレクトリ>/qttools/src/assistant/qhelpgenerator/CMakeLists.txt
  vi /<Qt 6のソースコードがあるディレクトリ>/qttools/src/assistant/qhelpgenerator/CMakeLists.txt
<br>
<br>
1,140行目: 1,150行目:
  # ...略
  # ...略
<br>
<br>
==== ビルドエラー : libQt6DBusに関するエラー ====
以下に示すようなエラーが発生する場合がある。<br>
libQt6DBus.so.6: undefined reference to
`QtPrivate::QPropertyBindingData::notifyObserver_helper(QUntypedPropertyData*, QBindingStorage*, QPropertyObserverPointer, QVarLengthArray<QBindingObserverPtr, 256ll>&) const@Qt_6`
<br>
システムルート内の既存のQt6ライブラリを一時的に隔離する。<br>
これにより、ビルドプロセスが誤ったライブラリを参照することを防ぐ。<br>
<br>
システムルートのライブラリディレクトリ内のQt6関連の共有ライブラリファイルを別のディレクトリに移動させる。<br>
cd /<Raspberry_Piのシステムルート>/usr/lib/aarch64-linux-gnu
mkdir -p Qt6_Backup
mv libQt6*.so* Qt6_Backup/
<br>
これにより、クロスコンパイル時に古いQt 6ライブラリが誤ってリンクされることを防ぐ。<br>
<br>
==== ビルドエラー : Waylandに関するエラー ====
==== ビルドエラー : Waylandに関するエラー ====
Qt 6をビルドする場合、以下に示すようなエラーが出力される場合がある。<br>
Qt 6をビルドする場合、以下に示すようなエラーが出力される場合がある。<br>
1,166行目: 1,192行目:
<br>
<br>
この時、Qt Creator 14は使用せずに、Qt Creator 13以前を使用する必要がある。<br>
この時、Qt Creator 14は使用せずに、Qt Creator 13以前を使用する必要がある。<br>
<br>
==== ロケールに関する警告 ====
デバッグ開始時において、以下に示す警告が表示される場合がある。<br>
Detected locale "C" with character encoding "ANSI_X3.4-1968", which is not UTF-8.
Qt depends on a UTF-8 locale, and has switched to "C.UTF-8" instead.
If this causes problems, reconfigure your locale. See the locale(1) manual
for more information.
<br>
この警告は、Raspberry Pi側のロケール設定がUTF-8ではないため、Qtが自動的にロケールを切り替えていることを示している。<br>
<br>
Qt Creatorのデバッグ設定において、環境変数を明示的に設定する。<br>
# [プロジェクト]を開いて、Qt Creatorのメイン画面左ペインにある[プロジェクト] - 該当するキット内にある[実行]を選択する。
# 次に、[環境]セクションの[詳細]ボタンを押下して、以下に示す設定を追加する。
#: <syntaxhighlight lang="text">
LANG=C.UTF-8
LC_ALL=C.UTF-8
</syntaxhighlight>
<br><br>
<br><br>