Error al instalar la almohada (y PIL)

Si uso el comando sudo pip install Pillow , funciona bien hasta la etapa de limpieza: (este es el mensaje de error completo del archivo de registro)

 clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future] clang: note: this will be a hard error (cannot be downgraded to a warning) in the future error: command 'cc' failed with exit status 1 ---------------------------------------- Cleaning up... Removing temporary dir /private/tmp/pip_build_root... Command /usr/bin/python -c "import setuptools, tokenize;__file__='/private/tmp/pip_build_root/Pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-VaD2jT-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /private/tmp/pip_build_root/Pillow Exception information: Traceback (most recent call last): File "/Library/Python/2.7/site-packages/pip/basecommand.py", line 122, in main status = self.run(options, args) File "/Library/Python/2.7/site-packages/pip/commands/install.py", line 283, in run requirement_set.install(install_options, global_options, root=options.root_path) File "/Library/Python/2.7/site-packages/pip/req.py", line 1435, in install requirement.install(install_options, global_options, *args, **kwargs) File "/Library/Python/2.7/site-packages/pip/req.py", line 706, in install cwd=self.source_dir, filter_stdout=self._filter_install, show_stdout=False) File "/Library/Python/2.7/site-packages/pip/util.py", line 697, in call_subprocess % (command_desc, proc.returncode,`enter code here` cwd)) InstallationError: Command /usr/bin/python -c "import setuptools, tokenize;__file__='/private/tmp/pip_build_root/Pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-VaD2jT-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /private/tmp/pip_build_root/Pillow 

Tengo las herramientas de línea de comandos de xcode instaladas. Realmente atascado en este.

—- ACTUALIZACIÓN —- Funcionó con el brew doctor y eliminó todos los errores. Instalar todos los requisitos previos de la almohada con éxito.

Aquí está el archivo pip.log de relleno: http://pastebin.com/08XD9JjM

Tengo el mismo problema. Parece ser un problema causado por el ruido con Xcode 5.1. Mira la respuesta de esta pregunta:

Error de instalación de la almohada OS X

Mi problema se resuelve usando el comando en esa respuesta:

 sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install Pillow 

Lanza muchas advertencias. Pero todo está bien.

Encontré una solución:

brew install python

Después de ejecutar brew doctor se demostró que, debido a la nueva instalación, había barriles desvinculados. Para corregir esto tuve que ejecutar brew link --overwrite python .

Entonces podría ejecutar sudo pip install Pillow sin ningún problema.

EDITAR: Parece que este es un problema conocido para Mac OS X, ya sea relacionado con XCode 5.1 o Mavericks 10.9: https://github.com/python-imaging/Pillow/issues/527

Esta parece ser la forma más no invasiva de resolver el problema:

Estaba teniendo el mismo problema y descubrí que la configuración de “CFLAGS = -Qunused-argumentos” y “CPPFLAGS = -Qunused-argumentos” resolvió mi problema (no quería tener que hacer una instalación limpia para resolverlo). Esta solución se describe aquí: Instalación ansible -clang: error: argumento desconocido: ‘-mno-fused-madd’


Respuesta original:

Parece que está intentando instalar Pillow en Mac OS X. ¿Ha instalado todos los requisitos previos, de acuerdo con las instrucciones de instalación de Mac OS X de Pillow ?

pip debería haber escrito más resultados sobre el error de comstackción, si no en la consola, luego en su archivo de registro. Debería echar un vistazo al archivo de registro y publicar los mensajes de error de comstackción relevantes en su pregunta, también, para ayudar a determinar el problema.