mac framework and python django macos python-imaging-library

python - framework - pip install django version



Instalando PIL para usar con Django en Mac OS X (9)

Después de la nueva instalación del sistema operativo, intente estos pasos:

  1. homebrew instalado
  2. brew install libjpeg
  3. brew install pil
  4. easy_install pil
  5. cd /Library/Python/2.6/site-packages
  6. ln -s /usr/local/Cellar/pil/1.1.7/lib/python2.6/site-packages/PIL PIL

Después de eso, pude cargar y guardar archivos jpeg ... Sé que este problema tiene muchas soluciones diferentes y no estoy al 100% de lo que voy a hacer para otros, pero vale la pena intentarlo si te golpeas la cabeza en la pared :)

Estoy realmente molesto por la instalación de PIL (Python Imaging Library) en Mac OS X 10.6. ¿Alguien lo tiene instalado y podría publicar la receta aquí? He probado muchos de ellos publicados aquí en este sitio y mucho de google, pero siempre faltan algunas partes y no puedo trabajar normalmente con PIL ...

Gracias por adelantado. Ignas


Estoy usando OS X 10.5.8, gcc 4.2.1, python 2.7.5, libjpegv9 y Pillow 2.1.0 (que se basa en PIL).

Mi problema aparentemente (pero es solo una suposición) fue causado por incompatibilidades de arquitectura de las compilaciones libjpeg y python (y Pillow).

La construcción de python y libjpeg desde la fuente utilizando solo el arco de 32 bits lo resolvió. Instalé todas las demás bibliotecas de Python, incluida la Almohada, solo usando

pip install xxxxx

y funcionó bien.

Detalles

Primero probé un dmg del sitio python.org y una compilación universal instalada a través de macports. No había especificado universal al instalar, pero macports instaló las arquitecturas i386 y ppc de todos modos.

Eso me causó problemas porque libjpeg compila solo a i386 por defecto.

Para comprobar la compilación de los binarios, hice:

file /usr/bin/python

/ usr / bin / python: binario universal Mach-O con 2 arquitecturas

/ usr / bin / python: ejecutable de Mach-O i386

/ usr / bin / python: PPC ejecutable de Mach-O

file /usr/local/lib/libjpeg.dylib

/usr/local/lib/libjpeg.dylib: biblioteca compartida enlazada dinámicamente Mach-O i386

Al compilar PIL (o Almohada), parecía usar las mismas opciones de compilación que python "-gcc i386 -gcc ppc" (lo que parece lógico).

Todo fue bien hasta que se construyó el módulo "_imaging". Allí, mostró una advertencia de que libjpeg.dylib no tenía la arquitectura adecuada, pero al final mostró que JPEG estaba disponible de la misma manera.



Hey, mira este article , me hizo maravillas en Snow Leopard.

También recomendaría usar libjpeg 0.6 en lugar de 0.7 señalado en el artículo.

Buena suerte.


Los siguientes pasos funcionaron para mí:

$ brew install pip $ export ARCHFLAGS="-arch i386 -arch x86_64" $ pip install pil


Podría ser más fácil identificar su problema si puede explicar qué ha intentado y qué mensajes de error se generaron con esos intentos. Aquí hay algunas soluciones probables que puede o no haber intentado:

pip install pil

si no tienes pip , prueba

easy_install pil

Ya que estás en la Mac, también puedes obtener HomeBrew (un administrador de paquetes) y luego probar

brew install pil

o MacPorts tiene un paquete PIL aquí .

O construir desde la source ?

Más importante aún, los estados de lectura de PIL,

* ------------------------------------------------- -------------------

Notas adicionales para Mac OS X

En Mac OS X, por lo general, instalará software adicional como libjpeg o freetype con la herramienta "fink", y luego terminará en "/ sw". Si ha instalado las bibliotecas en otro lugar, es posible que deba modificar el archivo "setup.py" antes de construir. *

Ese podría ser tu problema. ¡Buena suerte!


Sí, tengo problemas con PIL en 10.6.6 también, homebrew y easy_install .

La solución más fácil para mí fue pip install PIL easy_install PIL / pip install PIL , navegar a /Library/Python/2.6/site-packages/ , y PIL-1.1.7-.....egg archivo PIL-1.1.7-.....egg a PIL

ln -s PIL-................egg PIL >>> import PIL >>> from PIL import Image # no more problems.

Edición: estos días, trato de usar Pillow, una biblioteca creada para ayudar a instalar PIL. Trate de pip install pillow , no puede hacer daño!


Tengo problemas al instalar PIL con brew y easy_install en mi Mac también. Mi solución es descargar el código fuente de source , extraer la bola de alquitrán y usar

python setup.py install

para compilar e instalar el paquete.


EDITAR: Esta respuesta se ha votado recientemente y quiero modificarla para reflejar lo que estoy haciendo ahora.

Primero, cambié de MacPorts a Homebrew para la administración de paquetes en Mac OS X. En segundo lugar, cambié de usar mi administrador de paquetes a usar pip y virtualenvwrapper para administrar mis bibliotecas Python.

Por qué cambié:

Al principio, con solo unos pocos proyectos de Django, era muy fácil mantener todo actualizado utilizando MacPorts. También fue bastante fácil tener varias versiones de Python usando python_select . Lo que no me di cuenta era que estaba haciendo un trabajo bastante terrible al hacer que varias bibliotecas trabajaran lado a lado. Se hizo obvio al actualizar mis paquetes que a veces realmente no quería que cambiara la versión de Django de un proyecto. Después de que un par de proyectos de Django 1.1 (ahora ejecutando Django 1.3) comenzaron a mostrar un comportamiento extraño (los formularios no se pudieron enviar debido a los cambios de middleware CSRF, pequeñas diferencias en las bibliotecas de Django, cambios en los recursos de las aplicaciones de administración, etc.) quedó claro que debería mirar en una mejor solución.

Qué hago ahora:

En Mac OS X, pasé a usar pip y virtualenvwrapper. En primer lugar, instalo virtualenvwrapper:

pip install virtualenvwrapper

Esto agarrará virtualenv y virtualenvwrapper. A continuación, deberá agregar lo siguiente a su .bashrc o .profile y .profile o abrir un nuevo shell.

export WORKON_HOME=$HOME/.virtualenvs source /usr/local/bin/virtualenvwrapper.sh # where Homebrew places it export VIRTUALENVWRAPPER_VIRTUALENV_ARGS=''--no-site-packages'' # optional

La línea 1 configura la variable de trabajo que necesita para encontrar sus archivos. La línea 2 apunta al script de shell principal (la ruta aquí es donde Homebrew coloca el archivo, podría ser diferente si está usando otro administrador de paquetes). La línea 3 es opcional, pero me gusta mucho: se asegura de que no haya bibliotecas instaladas actualmente en el repositorio de paquetes de sitios "principales" que se filtren en su entorno virtual recién creado. Encuentro que esto mantiene las cosas limpias y conduce a menos sorpresas en el camino a medida que se actualizan las cosas.

El siguiente paso es crear un nuevo entorno virtual:

mkvirtualenv testEnvironmentName

Después de hacer el ambiente, serás colocado en él. Si mantienes la --no-site-packages , puedes escribir pip freeze para ver que tu pizarra de la biblioteca de Python está ahora en blanco. Para escapar del entorno virtual, use el comando de deactivate . Para volver a ingresar a su virtualenv, use workon testEnvironmentName . Tenga en cuenta que puede utilizar la finalización de tabulación en el nombre del entorno. También tenga en cuenta que escribir workon por sí solo le dará una lista de los entornos disponibles. Desde aquí puede pip install las bibliotecas que desee, incluyendo PIL.

Para obtener más información sobre virtualenvwrapper, recomiendo consultar la documentación .

Aquí hay otro gran recurso que me enseñó mucho sobre el uso de virtualenvwrapper ( o simplemente ver el screencast )

ORIGINAL:

También puede instalar PIL utilizando MacPorts . El nombre del paquete es py-pil . Aquí hay más información sobre el paquete . Soy bastante aficionado a MacPorts sobre pip, ya que me da un poco más de capacidad de configuración cuando se trata de mantener varias versiones de Python y varias bibliotecas instaladas.

Aquí están las instrucciones de instalación para MacPorts: http://www.macports.org/install.php

Ver también: ¿Cuál es la forma más compatible de instalar módulos de Python en una Mac?