Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

322
Vistas
Error con almohada compilada en Python 3.6 virtualenv

Estoy ejecutando un cuadro de Linux con ubuntu 14, ejecuta un servidor apache2 que aloja una aplicación Django. Esta aplicación importa PIL de la biblioteca de Pillow instalada. Todo funcionaba bien cuando estaba en Python 3.5, sin embargo, después de actualizar a Python 3.6 y reinstalar Pillow en Virtualenv, aparece un error cuando el servidor web intenta importar PIL.

Cuando ejecuto el intérprete de Python, todo se importa bien, ya que usa el script py directamente; sin embargo, como el servidor web está usando la biblioteca de almohadas instalada y compilada, está fallando. El error de Django muestra la pila como tal:

 Internal Server Error: /ticket-printing/ Traceback (most recent call last): File "/home/ubuntu/ipos-venv/lib/python3.6/site-packages/django/core/handlers/exception.py", line 41, in inner response = get_response(request) File "/home/ubuntu/ipos-venv/lib/python3.6/site-packages/django/core/handlers/base.py", line 249, in _legacy_get_response response = self._get_response(request) File "/home/ubuntu/ipos-venv/lib/python3.6/site-packages/django/core/handlers/base.py", line 187, in _get_response response = self.process_exception_by_middleware(e, request) File "/home/ubuntu/ipos-venv/lib/python3.6/site-packages/django/core/handlers/base.py", line 185, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/home/ubuntu/ipos/tickets/views.py", line 30, in stic_app PrintList.initiateSticApp(request) File "/home/ubuntu/ipos/tickets/models.py", line 434, in initiateSticApp BrandLogo.createBlankLogo() File "/home/ubuntu/ipos/store_admin/brands/models.py", line 108, in createBlankLogo from PIL import Image File "/home/ubuntu/ipos-venv/lib/python3.6/site-packages/Pillow-4.1.0-py3.6-linux-x86_64.egg/PIL/Image.py", line 56, in <module> from . import _imaging as core File "/home/ubuntu/ipos-venv/lib/python3.6/site-packages/Pillow-4.1.0-py3.6-linux-x86_64.egg/PIL/_imaging.py", line 7, in <module> __bootstrap__() File "/home/ubuntu/ipos-venv/lib/python3.6/site-packages/Pillow-4.1.0-py3.6-linux-x86_64.egg/PIL/_imaging.py", line 6, in __bootstrap__ imp.load_dynamic(__name__,__file__) ImportError: /home/ubuntu/ipos-venv/lib/python3.6/site-packages/Pillow-4.1.0-py3.6-linux-x86_64.egg/PIL/_imaging.cpython-36m-x86_64-linux-gnu.so: undefined symbol: PySlice_AdjustIndices

Intenté desinstalar, reinstalar Pillow a través de pip, easy_install y el método tar.gz setup.py y todo falla.

Cualquier orientación y ayuda sería muy apreciada.

Gracias

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Vaya, eso fue un montón de WTH...

Bien, después de probar casi todas las combinaciones de instalación y reinstalación de Pillow, decidí echar un vistazo a mi configuración de apache2/mod_wsgi.

Resulta que mi versión de mod_wsgi compilada con Python 2.7 no podía ejecutar el servidor mientras llamaba a los archivos compilados de Pillow.

Entonces, después de seguir algunas de las instrucciones aquí: https://pypi.python.org/pypi/mod_wsgi

Usé pip install mod_wsgi en mi virtualenv que creó un archivo .so en la carpeta site-packages/mod_wsgi de mi virtualenv. Luego copié ese archivo en /usr/lib/apache2/modules/mod_wsgi.so-XX y luego modifiqué el archivo /etc/apache2/mods-enabled/wsgi.load para señalar el nuevo archivo .so-XX.

Reinicié apache2 y el error dejó de aparecer nuevamente.

Un día entenderé estas cosas... Un día...

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda