RPiでQt WebEngineが動かなかった本当の原因
再び動かなくなる
さて, これまでにX11とWaylandを試し, そしてその結果Wayland上で動作させることができたというのは先に述べたとおりだ. しかし, その後X11を消すと再び動作しなくなってしまった. それでも, 幾度とない試行錯誤の結果ついに本当の原因を突き止めた.
X11を消すと動かない
原因を突き止めるため, まずWaylandをインストールしたイメージを作成し, それにX11を追加で導入した.
すると, 動いたのだ. また, 前回動作しなかったeglfs
でも動作することまでわかった.
これは明らかにライブラリなどの依存ではなく, 何らかのファイルに依存していることを示していた.
犯人は/usr/share/fonts
その後, X11のコンポーネントの.br_filelist_before
と.br_filelist_after
を順に比較し,
どのファイルが欠落すると動作しないのか調べた. その結果, /usr/share/fonts
ディレクトリを消去すると動作しなくなることが判明した.
Qtは/usr/lib/fonts
ディレクトリを用いるが, Qt WebEngineはそれを無視していた.
しかもエラーも何も出さずに. これは盲点だった.
その後
X11やWaylandなど, 追加したものは取り除き, 当初の予定通りeglfs
で環境を構築した.
その他, これまでの過程で出来たパッチをいずれ送る予定である. 全く,
こんな単純な問題だったのにあちこち別のところが壊れていてこれにたどり着くために苦労してしまった.