Я пишу библиотеку C++, которая может быть вызвана как с C++, так и с Python с помощью интерфейса SWIG-Python. Я хотел бы сделать несколько функций в библиотеке, чтобы вернуть массив numpy, когда они используются в Python.numpy.i отсутствует. Каков рекомендуемый способ его установки?
В документации SWIG [1] указано, что numpy.i
, находящееся под номером numpy/docs/swig
, может быть использовано для этой цели. Но я не могу найти этот каталог в следующих системах.
- Scientific Linux 6.4 (RHEL 6.4 клон) + Python 2.6 + NumPy 1.4 (устанавливается с помощью
yum
) - OS X Маверикс + Python 2.7 + NumPy 1.8 (через
easy_install
) - OS X Маверикс + Python 2.7 + NumPy 1,8 (построен из источника
python setup.py install
)
Там существует numpy.i
под numpy-1.8.0/doc/swig
если я получить исходный код .tar.gz с сайта NumPy. Но этот файл не устанавливается автоматически, когда выполняется python setup.py install
.
Так что я хотел бы знать, какой лучший или рекомендуемый способ установки numpy.i
в моей системе есть.
Поскольку я распространяю эту библиотеку среди своих коллег, установка numpy.i
в моем коде может быть простым решением. Но я говорю о несоответствии версии с их NumPy.
[1] http://docs.scipy.org/doc/numpy/reference/swig.interface-file.html
Вы уверены, что хотите SWIG вместо нового и более Pythonic Cython? (Просто спрашиваю.) –
@larsmans Мои коллеги и я используем эту библиотеку на основе SWIG какое-то время, и, таким образом, использование Cython не является моим вариантом. –
@larsmans Кроме того, наш конечный продукт будет использоваться в C/C++ для максимальной его скорости. В настоящее время Python используется только для быстрого тестирования. –