【解決】PyGObject のインストールエラーに対処する
Python のパッケージマネージャ pip で PyGObject をアップグレードしようとしたらエラーが出たので対応方法を書いておきます。
環境
- Linux, Ubuntu 20.04.5 LTS
- Python 3.8
- pip 22.3.1
対応方法(結論)
アップグレードに失敗したエラーメッセージに書いてありました。libgirepository1.0-dev をインストールするとよいそうです。
sudo apt install libgirepository1.0-dev
これでインストールしたあと、pip install -U pygobject で無事アップグレードできました。
起きたこと
pip コマンドでアップグレードしようとしたら以下のようなエラーが出てしまいました。
Building wheel for PyGObject (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for PyGObject (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [44 lines of output]
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-cpython-38
creating build/lib.linux-x86_64-cpython-38/pygtkcompat
copying pygtkcompat/generictreemodel.py -> build/lib.linux-x86_64-cpython-38/pygtkcompat
copying pygtkcompat/__init__.py -> build/lib.linux-x86_64-cpython-38/pygtkcompat
copying pygtkcompat/pygtkcompat.py -> build/lib.linux-x86_64-cpython-38/pygtkcompat
creating build/lib.linux-x86_64-cpython-38/gi
copying gi/_option.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/module.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/_constants.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/docstring.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/_ossighelper.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/_error.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/_propertyhelper.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/importer.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/types.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/_signalhelper.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/_gtktemplate.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/__init__.py -> build/lib.linux-x86_64-cpython-38/gi
copying gi/pygtkcompat.py -> build/lib.linux-x86_64-cpython-38/gi
creating build/lib.linux-x86_64-cpython-38/gi/repository
copying gi/repository/__init__.py -> build/lib.linux-x86_64-cpython-38/gi/repository
creating build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/GObject.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/GLib.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/Pango.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/Gtk.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/keysyms.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/GdkPixbuf.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/Gdk.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/Gio.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/GIMarshallingTests.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
copying gi/overrides/__init__.py -> build/lib.linux-x86_64-cpython-38/gi/overrides
running build_ext
Package gobject-introspection-1.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gobject-introspection-1.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gobject-introspection-1.0' found
Command '('pkg-config', '--print-errors', '--exists', 'gobject-introspection-1.0 >= 1.56.0')' returned non-zero exit status 1.
Try installing it with: 'sudo apt install libgirepository1.0-dev'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for PyGObject
ごちゃごちゃ書いてますが、最後の方に
No package 'gobject-introspection-1.0' found
Command '('pkg-config', '--print-errors', '--exists', 'gobject-introspection-1.0 >= 1.56.0')' returned non-zero exit status 1.
Try installing it with: 'sudo apt install libgirepository1.0-dev'
と書いてあります。ご丁寧に「libgirepository1.0-dev のインストールを試せ」と書いてあるので、それに従います。libgirepository1.0-dev パッケージをインストールしたあとに pip でアップグレードすると無事にうまくいきました。
ディスカッション
コメント一覧
まだ、コメントがありません