setup_requires com Cython?
Estou criando umsetup.py
arquivo para um projeto com alguns módulos de extensão Cython.
Eu já fiz isso funcionar:
from setuptools import setup, Extension
from Cython.Build import cythonize
setup(
name=...,
...,
ext_modules=cythonize([ ... ]),
)
Isso instala bem. No entanto, isso pressupõe que o Cython esteja instalado. E se não estiver instalado? Eu entendo isso é o que osetup_requires
parâmetro é para:
from setuptools import setup, Extension
from Cython.Build import cythonize
setup(
name=...,
...,
setup_requires=['Cython'],
...,
ext_modules=cythonize([ ... ]),
)
No entanto, se o Cython ainda não estiver instalado, é claro que isso falhará:
$ python setup.py install
Traceback (most recent call last):
File "setup.py", line 2, in <module>
from Cython.Build import cythonize
ImportError: No module named Cython.Build
Qual é a maneira correta de fazer isso? Eu preciso de alguma forma importarCython
somente após osetup_requires
passo é executado, mas eu precisoCython
para especificar oext_modules
valores.