2
我想从我的setup.py
通过使用平台游戏而不是Extension()来调用C编译器。如何将自定义构建步骤添加到setup.py
,以便使其与python setup.py build
或任何其他构建版(bdist_*
)命令一起运行?如何将自定义构建步骤添加到我的setuptools/distribute setup.py?
我想从我的setup.py
通过使用平台游戏而不是Extension()来调用C编译器。如何将自定义构建步骤添加到setup.py
,以便使其与python setup.py build
或任何其他构建版(bdist_*
)命令一起运行?如何将自定义构建步骤添加到我的setuptools/distribute setup.py?
我不知道'平台游戏'是什么。我假设你想完全控制如何构建C扩展,同时为打包工具提供相同的接口。
一种可能的方法:Cython defines its custom built_ext command是could be used as:
from distutils.core import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext
setup(
cmdclass = {'build_ext': build_ext},
ext_modules = [Extension("example", ["example.pyx"])]
)
一个简单的选择可能是仅仅包括生成的C源到您的源码包,并使用标准的built_ext,扩展类的setup.py。它将提供与现有工具的最佳兼容性。
相关:[自定义distutils命令](http://stackoverflow.com/q/1710839/4279) – jfs 2012-08-23 16:02:02