Reputation: 8572
What I tried:
brew install pygobject3 --with-python@2 gtk+3
brew install pygtk3
brew install pygobject3
pip install pygobject
python -c 'import gi; gi.require_version("Gtk", "3.0")'
Result:
ValueError: Namespace Gtk not available for version 3.0
Note that I'm running conda, with python 3.6; and Mac OS X High-Sierra
I read through the following questions/answers before posting:
(Note that if I change the requires
to 2.0
, then it loads ok, but I get a warning:
"RuntimeWarning: You have imported the Gtk 2.0 module. Because Gtk 2.0 was not designed for use with introspection some of the interfaces and API will fail. As such this is not supported by the pygobject development team and we encourage you to port your app to Gtk 3 or greater. PyGTK is the recomended python module to use with Gtk 2.0" )
Upvotes: 9
Views: 7427
Reputation: 21
install the gtk3 distribution version from Conda-forge channel
https://github.com/conda-forge/gtk3-feedstock/tree/cb80587f33166c0e19abe20ea7885a03bffda4ab
Upvotes: 2
Reputation: 1622
The problem is that the developers of pygobject3 have written their install instructions that does NOT consider pip/conda. If you follow the official documentation:
brew install python
)brew install gtk+3
is NOT compatible with non homebrew Pip/Conda python installs. You have to build the GTK3 package manually to use the pip version of pygobject3. However if you want to use conda, thanks to this conda contributor, there is a pre-built conda gtk3 package you can use, you just have to get it from his channel:
Make a new environment using conda:
conda create --name my_env
install pygobject3 from conda
conda install pygobject
install gtk3 from the pkgw-forge channel
conda install -c pkgw-forge gtk3
To verify, open python from within the conda env and run
import gi
gi.require_version("Gtk", "3.0")
Should get no errors
Upvotes: 5
Reputation: 31
I had the same problem. I tried
$ brew install pygobject3 gtk+3
and it was smoothly installing. Then checked as Jeff's answer:
$ python3 -c 'import gi; gi.require_version("Gtk", "3.0"); print("ok")'
got ok.
Hope this helps,
Cheers
Upvotes: 3
Reputation: 21
I had the same problem. I followed the instructions on pygobject web.
Everything is fine now (note I use python3 not python for the test) :
$ python3 -c 'import gi; gi.require_version("Gtk", "3.0"); print("ok")'
ok
Upvotes: 2