Instalación de fusión: No se puede importar: pygtk

10

Instalé melden Mac OSX con Homebrew:

brew install meld

Luego, cuando lo ejecuto meld .falla con el siguiente error:

No se puede importar: pygtk

Ningún módulo llamado pygtk

Sin embargo, pygtkya está instalado:

brew install pygtk

Error: pygtk-2.24.0 ya está instalado

alf
fuente

Respuestas:

7

La solución fue instalar PyGTK, directamente desde el pkgarchivo en el repositorio:

http://sourceforge.net/projects/zero-install/files/PyGTK/2.24.0/org.pygtk.macosx.pkg/download

Funcionó perfectamente después de eso.

alf
fuente
Wow seguramente funciona después de eso. Primero intenté instalarlo a través de macports, pero eso tomó mucho tiempo y al final ni siquiera funcionó o tal vez no pude encontrar la manera de ejecutarlo desde la terminal. Pero esta opción era simple. ¡Gracias!
Rahul Dole
Esto también funcionó para el mismo error que estaba viendo ejecutando Diffuse después de actualizar a High Sierra
Alastair
2

Este parece ser el bit que falta después de instalar usando brew:

export PYTHONPATH=/usr/local/lib/python2.7/site-packages
brablc
fuente
1
Eso no me funciona. :(
trusktr
1
Espera no importa, primero comienza xquartz, luego la fusión funciona.
trusktr
2

Descubrí que pygtk es solo una parte del paquete. Para que meld funcione, debe instalar lo siguiente:

XQuartz

brew uninstall cairo gtk+ pygobject py2cairo pygtk
brew tap phinze/homebrew-cask
brew install cairo gtk+
brew install py2cairo pygtk
brew install pygobject
brew install meld

Luego, si usted es "/usr/local/lib/python2.7/site-packages/" debería ver esto:

Mac-Pro:~ user$ ls -la /usr/local/lib/python2.7/site-packages/ | grep pygtk
lrwxr-xr-x    1 user  admin      84 Mar  3 19:46 gtksourceview2.so -> ../../../Cellar/pygtksourceview/2.10.0/lib/python2.7/site-packages/gtksourceview2.so
lrwxr-xr-x    1 user  admin      70 Mar  5 01:04 pygtk.pth -> ../../../Cellar/pygobject/2.28.6/lib/python2.7/site-packages/pygtk.pth
lrwxr-xr-x    1 user  admin      69 Mar  5 01:04 pygtk.py -> ../../../Cellar/pygobject/2.28.6/lib/python2.7/site-packages/pygtk.py
-r--r--r--    1 user  admin    2075 Mar  5 01:05 pygtk.pyc
lrwxr-xr-x    1 user  admin      70 Mar  5 01:04 pygtk.pyo -> ../../../Cellar/pygobject/2.28.6/lib/python2.7/site-packages/pygtk.pyo

pygobject es en realidad la biblioteca que crea los enlaces de la biblioteca pygtk que está buscando meld, creo que el orden de instalación es importante, ya que todos estos paquetes se instalaron y meld no pudo comenzar con un error de biblioteca pygtk faltante.

Cuando se instaló en el orden anterior, meld funcionó a la perfección en dos máquinas separadas que ejecutaban Mavericks 10.9.2, que anteriormente tenía una configuración de entorno completa en la que meld no reportó ninguna biblioteca pygtk cuando se inició.

Encontré que esto funcionó sin necesidad de configurar PYTHONPATH, por no decir que no es una mala idea.

Para ejecutar meld, simplemente abra una terminal y ejecute:

meld

Editar: Se agregó tap cask, instalar cask, requerido para que cairo se instale. Agregado brew install meld, agregada instrucción de ejecución.

Joshua Briefman
fuente
0

Utilizo macport para instalar meld en mi Yosemite OSX 10.10 mac air. Encontré el mismo problema. El método de @brablc no parece funcionar para mí. Luego encontré esta solución que funciona para mí:

PYTHONPATH=/usr/lib/python2.7 meld &
David
fuente
Eso no me funciona. :(
trusktr
Espera no importa, primero comienza xquartz, luego la fusión funciona.
trusktr
0

Lo instalé con brew. Mi error fue Cannot import: GTK+. Para resolverlo, abra la terminal e ingrese:

rm /Applications/Meld.app/Contents/Frameworks/libz.1.dylib

Después de eso, funciona.

lenooh
fuente