Если модуль Python (cairo) установлен успешно, но его не удается импортировать в Python, в чем может быть проблема?Python

Программы на Python
Anonymous
Если модуль Python (cairo) установлен успешно, но его не удается импортировать в Python, в чем может быть проблема?

Сообщение Anonymous »

Если модуль Python успешно установлен, но его не удается импортировать в Python (через PyCharm IDE), в чем может быть проблема? Какому контрольному списку следует следовать для диагностики проблемы в этом случае и в будущем, когда модуль устанавливается, но позже его не удается импортировать?

Для этого конкретного случая я установил модуль векторной графики для Python под названием cairo.
http://cairographics.org/releases/pycairo-1.8.8.tar.gz

Успешную установку см. ниже:

sudo python setup.py install
cairo >= 1.8.8 detected
creating pycairo.pc
creating src/config.h
running install
running build
running build_ext
running install_lib
creating /Library/Python/2.7/site-packages/cairo
copying build/lib.macosx-10.9-intel-2.7/cairo/_cairo.so -> /Library/Python/2.7/site-packages/cairo
running install_data
creating /System/Library/Frameworks/Python.framework/Versions/2.7/include/pycairo
copying src/pycairo.h -> /System/Library/Frameworks/Python.framework/Versions/2.7/include/pycairo
copying pycairo.pc -> /System/Library/Frameworks/Python.framework/Versions/2.7/lib/pkgconfig
running install_egg_info
Writing /Library/Python/2.7/site-packages/pycairo-1.8.8-py2.7.egg-info


Казалось, все шло гладко, но позже этот модуль не удалось импортировать при вызове в Python: Ошибка импорта: нет модуля с именем cairo.

Одна из возможностей заключается в том, что он был установлен в неправильном каталоге - /Library/Python/2.7/site-packages/.
Другая возможность состоит в том, что я должен каким-то образом явно сообщить Python местоположение модуля. то есть: /Library/Python/2.7/site-packages/cairo, на основе результатов сценария установки, найденного выше.

Это довольно странно, поскольку cairo присутствует в /Library/Python/2.7/site-packages/, и я могу импортировать другие библиотеки, такие как PIL, найденные в том же каталоге.

Изображение


По предложению aIKID я попробовал использовать pip для получения установленных пакетов. В результате у меня получился длинный список, включающий модуль под названием pycairo. Я попробовал импортировать как pycairo, так и cairo, но все равно получил ошибку импорта. Интересно, что «каир» находится в /Library/Python/2.7/site-packages/cairo, а «pycairo» находится после вызова pip.get_installed_distributions(). Вроде дистрибутив называется pycairo, а модуль cairo. import cairo должен работать, но в любом случае оба импорта завершаются неудачно.

Изображение


По предложению Кристофера я проверил /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ и не нашел cairo. По той же причине я не нашел PIL (библиотеку обработки изображений Python). Я все еще могу импортировать PIL, который находится в /Library/Python/2.7/site-packages/, вместе с cairo.

Python 2.7.5 (default, Aug 25 2013, 00:04:04)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import PIL, cairo
Traceback (most recent call last):
File "", line 1, in
ImportError: No module named cairo

Вернуться в «Python»