みつきんのメモ

組み込みエンジニアです。Interface誌で「Yocto Projectではじめる 組み込みLinux開発入門」連載中

Yocto meta-gnomeでpolkitのエラー

はじめに

デフォルトの設定でmeta-gnomeをビルドするとエラーが発生する。

エラーの内容

gnome-control-centerとsystmedがそれぞれで/usr/share/polkit-1/rules.dをインストールしようとしてコンフリクトしている。

Error: Transaction test error:
  file /usr/share/polkit-1/rules.d conflicts between attempted installs of gnome-control-center-3.36.4-r0.cortexa7t2hf_neon_vfpv4 and systemd-1:246.9-r0.cortexa7t2hf_neon_vfpv4

設定ファイル自体がかぶってエラーになるならともかく、格納場所であるディレクトリがかぶってエラーになってしまうのはどうかと思う。

原因

meta-gnomeはmeta-openembeddedの持ち物なので、こんな基本的なところがメンテナンスされないことはないだろうと思いつつ調べていくと、ここで似たようなエラーメッセージが引っかかった。

これはPC(サーバ)用のLinux上でrpmの処理中に似たような状況になっている。

これはbitbakeのエラーではなくRPMの制限なのかと推測した。

回避策

local.confに下記を追加し、パッケージシステムをrpmからdebにする。

PACKAGE_CLASSES = "package_deb"

まとめ

meta-gnomeを使う場合はパッケージシステムはRPM以外にする。