Вот что я сделал до сих пор:
Я установил Homebrew:
/usr/bin/ruby -e "$(/usr/bin/curl -fsSL https://raw.github.com/mxcl/homebrew/master/Library/Contributions/install_homebrew.rb)"
Затем python:brew install python
Затем py2cairo:brew install py2cairo
оба они, кажется, устанавливаются правильно, и когда я набираю which python
, я получаю :usr/local/bin/python
, который, как я полагаю, является версией доморощенного.
Я отредактировал свой путь, как советовали многие руководства по Homebrew:
export PATH=/usr/local/bin:/usr/local/share/python:$PATH
Вот что я получаю изecho $PATH
:/usr/local/bin:/usr/local/share/python:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
Я также могу ввести python --version
и получить python 2.7.3
, что кажется правильным, потому что, если я посмотрю в /usr/local/Cellar/py2cairo/1.10.0/README
, это говорит:
Dependencies
------------
cairo >= 1.10.0
Python >= 2.6
Однако после всего этого я все еще не могу импортировать библиотеку py2cairo в python. Вот что я получаю, когда пытаюсь:
Sal:~ Lockyer$ python
Python 2.7.3 (default, May 6 2012, 13:47:31)
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.9.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import cairo
Fatal Python error: Interpreter not initialized (version mismatch?)
Abort trap: 6
Я думаю, что большинство людей используют pip
или easy_install
для такого рода вещей, но я не думаю, что py2cairo поддерживается ими. Вот что я получаю, когда запускаюpip-2.7 install py2cairo
:
Downloading/unpacking py2cairo
Could not find any downloads that satisfy the requirement py2cairo
No distributions at all found for py2cairo
Storing complete log in /Users/Lockyer/Library/Logs/pip.log
Я думаю, что просто пропустил один последний шаг, когда я каким-то образом открываю python, откуда импортировать библиотеку... я забыл добавить что-то в свой путь?
Вот что я получаю при запускеls -l /usr/local/bin/python
lrwxr-xr-x 1 Lockyer admin 33 6 May 13:48 /usr/local/bin/python ->../Cellar/python/2.7.3/bin/python
Вот что я получаю при запускеotool -L /usr/local/Cellar/py2cairo/1.10.0/lib/python2.7/site-packages/cairo/_cairo.so
:
/usr/local/Cellar/py2cairo/1.10.0/lib/python2.7/site-packages/cairo/_cairo.so:
/private/tmp/homebrew-py2cairo-1.10.0-BtmY/py2cairo-1.10.0/build_directory/src/_cairo.so (compatibility version 0.0.0, current version 0.0.0)
/usr/local/Cellar/cairo/1.10.2/lib/libcairo.2.dylib (compatibility version 11003.0.0, current version 11003.2.0)
/System/Library/Frameworks/Python.framework/Versions/2.7/Python (compatibility version 2.7.0, current version 2.7.1)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1094.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0)
Перемещение /System/Library/Frameworks/Python.framework/Versions
на рабочий стол и повторный запуск brew install py2cairo
, кажется, исправили ошибку. Было бы неплохо узнать, почему он строился против питона Lion, потому что он, похоже, не был первым на пути...