pygobject-2.28.6 无法配置:找不到包“gobject-introspection-1.0”,如何解决?

问题描述 投票:0回答:6

我正在尝试让 pygobject-2.28.6 在 cygwin 中编译(存储库中的版本是 2.28.4,有一些问题)。这是 ./configure 的尾部:

checking for GLIB - version >= 2.24.0... yes (version 2.34.3)
checking for ffi... checking for FFI... yes
checking for GIO... yes
checking for GIOUNIX... yes
checking for GI... no
configure: error: Package requirements (glib-2.0 >= 2.24.0
        gobject-introspection-1.0 >= 0.10.2
    ) were not met:

No package 'gobject-introspection-1.0' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables GI_CFLAGS
and GI_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

我安装了 gobject-introspection 1.34.2-3。正如这里所见:

$ whereis gobject-introspection
gobject-introspection: /lib/gobject-introspection /usr/lib/gobject-introspection

还有这里

$ whereis gobject-introspection-1.0
gobject-introspection-1: /usr/share/gobject-introspection-1.0

我尝试将configure =中的GI_CFLAGS和GI_LIBS设置为/ lib /和/ usr / lib /(甚至/ usr / share /)但无济于事。我还能做什么来尝试解决这个问题?谢谢您的宝贵时间!

cygwin pygobject pkg-config gobject gobject-introspection
6个回答
125
投票

您可能缺少开发包。 软件包名称因发行版而异,但包含

/usr/lib/pkgconfig/gobject-introspection-1.0.pc
(对于某些 64 位发行版则包含
/usr/lib64/pkgconfig/gobject-introspection-1.0.pc
):

  • Fedora、CentOS、RHEL、gobject-introspection-devel
  • Debian、Ubuntu、Mint、libgirepository1.0-dev
  • Arch:g对象内省
  • FreeBSD:g对象内省
  • Cygwin:libgirepository1.0-devel
  • msys2:mingw-w64-x86_64-gobject-introspection和/或mingw-w64-i686-gobject-introspection

22
投票

我在 cygwin 上编译了这个。您需要的包裹是:

libgirepository1.0-devel
.

在 Ubuntu 中称为

libgirepository1.0-dev


6
投票

对于 macOS {我的是(intel cpu)}:

 brew install pygobject3 gtk+3
 pip install --no-use-pep517 PyGObject

它在 python 2.7 虚拟环境中运行。


3
投票

我没有足够的代表来发表评论,所以这实际上是 Nemequ 答案的附录:

  • MSYS2:mingw-w64-x86_64-gobject-introspection和/或mingw-w64-i686-gobject-introspection

0
投票

我运行时的错误消息

pip install pygobject
:

Collecting pygobject
  Using cached PyGObject-3.42.2.tar.gz (719 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting pycairo>=1.16.0
  Using cached pycairo-1.21.0-cp39-cp39-linux_x86_64.whl
Building wheels for collected packages: pygobject
  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
  ╰─> [42 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-cpython-39
      creating build/lib.linux-x86_64-cpython-39/pygtkcompat
      copying pygtkcompat/pygtkcompat.py -> build/lib.linux-x86_64-cpython-39/pygtkcompat
      copying pygtkcompat/generictreemodel.py -> build/lib.linux-x86_64-cpython-39/pygtkcompat
      copying pygtkcompat/__init__.py -> build/lib.linux-x86_64-cpython-39/pygtkcompat
      creating build/lib.linux-x86_64-cpython-39/gi
      copying gi/types.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/pygtkcompat.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/module.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/importer.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/docstring.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/_signalhelper.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/_propertyhelper.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/_ossighelper.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/_option.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/_gtktemplate.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/_error.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/_constants.py -> build/lib.linux-x86_64-cpython-39/gi
      copying gi/__init__.py -> build/lib.linux-x86_64-cpython-39/gi
      creating build/lib.linux-x86_64-cpython-39/gi/repository
      copying gi/repository/__init__.py -> build/lib.linux-x86_64-cpython-39/gi/repository
      creating build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/keysyms.py -> build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/__init__.py -> build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/Pango.py -> build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/Gtk.py -> build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/Gio.py -> build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/GdkPixbuf.py -> build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/Gdk.py -> build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/GObject.py -> build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/GLib.py -> build/lib.linux-x86_64-cpython-39/gi/overrides
      copying gi/overrides/GIMarshallingTests.py -> build/lib.linux-x86_64-cpython-39/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
      Package 'gobject-introspection-1.0', required by 'virtual:world', not found
      Command '('pkg-config', '--print-errors', '--exists', 'gobject-introspection-1.0 >= 1.56.0')' returned non-zero exit status 1.
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for pygobject
Failed to build pygobject
ERROR: Could not build wheels for pygobject, which is required to install pyproject.toml-based projects

没有提到“gobject-introspection-1.0”,但是这个doc提到了命令设置

gobject-introspection
并顺利解决了我的问题。

sudo pacman -S --noconfirm python-wheel
sudo pacman -S --noconfirm base-devel openssl zlib git gobject-introspection

0
投票

在 Ubuntu 中:

$> sudo apt install libgirepository1.0-dev 
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.