えむのメモして満足するLog

どうも私です。

dbus-python を Upgrade するとコケた話

いきなりですが

  • 自己責任でどうぞ
    • 無理にアップグレードする必要はありません。
  • 宗教上の理由によりUbuntu環境です
    • Pythonライブラリ以外はOSパッケージ管理システムに限った話なので、RHEL系(CentOS、Rocky Linuxなど)はパッケージ名探して置き換えれば良いだけです。
    • pip中心です。condaは使ったことが無いのでここでは触れません。
  • 端折ってます
    • 正直色々やってた最中に記録を取り始めたメモ書きレベルなので、抜けているところがあるかもしれません。抜けてたらコメントで教えてください。
  • ログを見よう
    • あなたがログを確認できないと何が足りないかを確認できない上、ここに書いてあることすら理解できない。
  • sudo pip ...を連発してますが安心してください
  • Pythonマジ分からん

dbus-pythonは最初からインストール済みで、それをアップグレードしようとしてます。

念のためにaptからpython3-dbusを再インストールしておきましょう。特にPython自体のバージョンをアップグレードした方はするべきです。 👉 sudo apt install --reinstall python3-dbus

python3-dbusは依存関係にGLibも含まれてるため、残りのcmakePyQt5は自力でインストールしてください。

meson-pythonが無い

AttributeError: module 'mesonpy' has no attribute 'prepare_metadata_for_build_wheel'

類似するパッケージがヒットするので混乱してたが、 "module 'mesonpy'" は meson-python の事らしい。

sudo pip install meson-python

"dbus-1"が見つからないエラー

ERROR: Dependency "dbus-1" not found, tried pkgconfig

aptから不足してるlibdbus-1-devをインストールしておく。

sudo apt install libdbus-1-dev

ninjaが無い

ERROR: Could not detect Ninja v?.?.? or newer

sudo pip install ninja

https://pypi.org/project/ninja/

patchelfが無い

FileNotFoundError: [Errno ?] No such file or directory: 'patchelf'

sudo pip install patchelf

https://pypi.org/project/patchelf/

あとがき

組み込み例外にModuleNotFoundErrorがあるのだが、そういうので統一してくれないんだろうか💢