2012-06-13 11 views
10

Estoy tratando de ejecutar el servidor para el iphone usando http://www.raywenderlich.com/3932/how-to-create-a-socket-based-iphone-app-and-serverImportError: Sin módulo denominado zope.interface

Mi máquina es la versión Mac 10.6.8 Python: 2.7.3 no tengo ningún conocimiento sobre pitón. he instalado Twisted-12.1.0 adicionalmente pero aún recibo este error.

Rastreo (llamada más reciente pasado): Archivo "chatserver.py", línea 1, en del Protocolo de importación twisted.internet.protocol, Fábrica Archivo "/Library/Frameworks/Python.framework/Versions/2.7 /lib/python2.7/site-packages/twisted/internet/protocol.py", línea 15, en de importación zope.interface implementa ImportError: Sin módulo denominado zope.interface

zope más tarde me he descargado. app.wsgi-3.15.0 4 pero no sé cómo usarlo.

Respuesta

3

En la parte superior de mi cabeza puedes usar easy_install para esto.

Se necesitará el pitón-setuptools, entonces debería ser capaz de utilizar

easy_install zope.interface 

Si no recuerdo mal, sin embargo retorcido debe ser instalado como parte de OS X instalar Python. Haga una búsqueda rápida de Google para instalar zope.interface para Mac OS X. Como es una biblioteca ampliamente utilizada, hay mucha información disponible.

+0

Esto no funciona para mí. Están sucediendo más cosas que podrían tener que ver con la ruta de los usuarios. – jml

+0

¡Gracias, esto me salvó de la degradación de Python 2.7.3 a 2.7.0! – thax

6

Aquí hay una solution

Se dice que la instalación de un módulo de zope a través de pepita rompe su instalación zope porque pip lo instala en otro directorio distinto del directorio original módulo de zope.

Desde el enlace

After install a zope module using pip, for example z3c.password your zope installation gets broken.

This is because pip have installed the module in /usr/local/lib/python2.6/dist-packages/zope and the original module zope.interface is in /usr/share/pyshared/zope/interface/ and has minor relevance when importing.

Lo que funcionó para mí es (también figura en el link):

cd /usr/local/lib/python2.7/dist-packages/zope 
sudo ln -s /usr/share/pyshared/zope/interface/ 
+0

Esto merece ser aceptado – aitchnyu

+0

Puede confirmar esto funciona. Simplemente ubique dónde el paquete python-zope.interface ha instalado la carpeta zope/interface y ln -s a él – gnarbarian

9

El problema es que un archivo __init__.py no está presente en el directorio zope por lo que este directorio no se escanea para las importaciones.

Crear un archivo __init__.py en blanco bajo el directorio de zope hará el truco.

He resuelto este error en UNIX navegando al directorio zope ejecutando:

$touch __init__.py 

puedo confirmar que esto funciona también con la instalación de pepita virtualenv de interfaz de Zope

+1

Esto, y esto solo, resolvió el error "import zope.interface ImportError: No module named interface" para mí. Nunca hubiera sido capaz de descifrar eso de la pila de fichas. Es una solución en Linux, también. Upvoted. – user3469861

+0

Se pensó que python3 eliminó archivos __init__. – sureshvv

Cuestiones relacionadas