Установка PIL на OS X Lion (полный нуб) - PullRequest
5 голосов
/ 20 декабря 2011

Я хочу запустить Python ndimage , чтобы провести некоторый анализ изображений. У меня есть 64-битный Mac под OSX Lion и Python 2.7. Когда я попытался запустить команды из ndimage команд, я обнаружил, что мне нужно установить PIL.

Я скачал это и разархивировал (пока в папку загрузок, есть ли лучшее место, чтобы сделать это?). Я запускаю setup.py и получаю следующие сообщения:

running install
running build
running build_py
running build_ext
--- using frameworks at /System/Library/Frameworks
building '_imaging' extension
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -DHAVE_LIBZ -I/System/Library/Frameworks/Tcl.framework/Headers -I/System/Library/Frameworks/Tk.framework/Headers -IlibImaging -I/Library/Frameworks/Python.framework/Versions/2.7/include -I/usr/include -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _imaging.c -o build/temp.macosx-10.6-intel-2.7/_imaging.o
unable to execute gcc-4.2: No such file or directory
error: command 'gcc-4.2' failed with exit status 1

Я прочитал Не удалось собрать PIL на Mac OS X 10.7 Lion и убедился, что у меня установлена ​​32/64-битная версия python 2.7 (Mac OS X 64-битная / 32-битная x86- 64 / i386 Installer (2.7.2) для Mac OS X 10.6 и 10.7). У меня также установлен Xcode. Я делаю что-то глупое здесь?

Редактировать 1: Глядя дальше, я обнаружил, что gcc-4.2 не удалось с состоянием выхода 1 . Я пытался ввести это, когда я получаю сообщение об ошибке:

llvm-gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -DHAVE_LIBZ -I/System/Library/Frameworks/Tcl.framework/Headers -I/System/Library/Frameworks/Tk.framework/Headers -IlibImaging -I/Library/Frameworks/Python.framework/Versions/2.7/include -I/usr/include -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _imaging.c -o build/temp.macosx-10.6-intel-2.7/_imaging.o

и я получаю эти сообщения:

_imaging.c:3017: warning: initialization from incompatible pointer type
_imaging.c:3077: warning: initialization from incompatible pointer type
_imaging.c:3017: warning: initialization from incompatible pointer type
_imaging.c:3077: warning: initialization from incompatible pointer type

Редактировать 2: Я не уверен, что это правильный путь, но я нашел сообщение об установке pil на OSX Leopard и, следуя его советам, избавился от части команды -arch i386 и ввел :

 llvm-gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 -g -O2 -DNDEBUG -g -O3 -DHAVE_LIBZ -I/System/Library/Frameworks/Tcl.framework/Headers -I/System/Library/Frameworks/Tk.framework/Headers -IlibImaging -I/Library/Frameworks/Python.framework/Versions/2.7/include -I/usr/include -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _imaging.c -o build/temp.macosx-10.6-intel-2.7/_imaging.o

Теперь я получаю только две ошибки:

_imaging.c:3017: warning: initialization from incompatible pointer type
_imaging.c:3077: warning: initialization from incompatible pointer type

Из того, что я могу сказать на данный момент, программа вылетает и не заканчивает компиляцию. Может ли кто-нибудь помочь мне взять его отсюда?

Ответы [ 3 ]

1 голос
/ 02 апреля 2012

https://github.com/kennethreitz/osx-gcc-installer/downloads

Скачать GCC для льва.Устранена вся ошибка: команда 'gcc-4.2' завершилась с ошибкой состояния выхода 1.

0 голосов
/ 09 октября 2012

У меня были проблемы с компиляцией PIL с Mountain Lion и python 2.7. Вместо этого я использовал Подушка , это дружественная вилка PIL с более широкой поддержкой платформы.

Относительно ваших вопросов настройки:

  • Я использую macports для Python 2.7 и другие вещи с открытым исходным кодом на моем Mac (libpng, libjpeg и т. Д. Для PILLOW)
  • virtualenv для создания виртуальной среды Python (Venv будет встроен в Python 3.3)
  • Я поместил исходный код в ~ / src (вместо папки Downloads)
0 голосов
/ 09 октября 2012

Я добился очень хороших успехов с библиотекой изображений Python MacPorts (PIL), Pandas, Numpy и другими пакетами для численного анализа на Lion и Mountain Lion.

В последнее время произошло несколько значительных обновлений gcc для интеграции с последними числовыми модулями Python в MacPorts.Выглядело как очень значительное усилие.Я рекомендую MacPorts, если вы не решили хэшировать через собственную установку PIL на Lion.

...