Чтобы создать расширение Cython с использованием numpy, нужно добавить numpy.get_include()
в "setup.py":
from setuptools import setup, Extension
setup(
...
include_dirs = [numpy.get_include()]
)
В противном случае возникает такая ошибка:
fatal error: numpy/arrayobject.h: No such file or directory
даже если вы собираете расширение непосредственно из предварительно скомпилированного файла .c.
Очевидное решение - заранее установить numpy.
Но setup.py install
установка пакета - это обычный способ установить все зависимости пакета (включая numpy). Есть ли способ избавиться от зависимости от numpy при распространении пакета, т.е. чтобы людям не приходилось устанавливать numpy перед запуском setup.py install
?
Я думал о включении numpy .h файлов в дистрибутив, но я боюсь конфликтов версий с существующей numpy-версией пользователя.
Может быть, попробовать импортировать и, если я получу ImportError
, включить упакованные файлы .h? Любой стандартный / более простой способ?
Изменить: или есть ли способ принудительно установить numpy до запуска setup()
?
ndarray
s, вам не нужна зависимость от numpy-заголовков. - person DavidW   schedule 16.06.2016