cython setuptools集成

cython-setuptools的Python项目详细描述


cython设置工具

Build Status

易于cython模块的分布和开发。

功能:

  • 两个分发模型:包含在包中的C/C++文件,以及 没有
  • cython模块在setup.cfg
  • 中定义
  • 直接从cython源安装,而不在目标中安装cython 环境(cython只包含在install_requires

安装

$ pip install cython-setuptools

用法

下面是一个使用默认分发模型的示例python包(仅 cython文件包含在源包中)。

首先在包中安装cython-setuptools供应商模块,旁边是 setup.py

$ cd your-python-project/
$ cython-setuptools install

然后在setup.py

中使用cython-setuptoolssetup()
fromcysetuptoolsimportsetupsetup()

注意,这里保留setup()的默认cythonize=True参数, 这意味着C文件是从cython文件自动编译而来的。 {< CD10> }将意味着我们需要分发C/C++文件 从源包中的cython编译而来。

setup.cfg中定义cython模块。

[metadata]name=your-python-projectversion=1.0[options]packages=find:install_requires=cython[options.extras_require]dev=cython[cython-defaults]include_dirs=include/[cython-module: foo.bar]sources=foo.pyx          bar.cppinclude_dirs=eval(__import__('numpy').get_include())language=c++pkg_config_packages=opencv

然后,您的cython模块可以编译并使用以下命令进行测试:

$ python setup.py build_ext --inplace

这会自动编译过时的cython文件。如果setup(cythonize=False) 使用时,必须明确告诉安装程序重新编译过时的cython 文件:

$ CYTHONIZE=1 python setup.py build_ext --inplace

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
标头中的java cachecontrol未反映在jetty服务器上   java根据XSLT版本选择XSLT处理器   使用Lombok项目的java不明确方法调用   java powershell为每个文件构建一个要执行的字符串   java如何在Vaadin组合框中添加搜索图标?   从输入流读取有限长度的java最佳实践   动态操作后GridLayoutManager中的java项高度   java理解ThreadPoolExecutor中的池大小   在java中保持地址空间不变   java无法理解为什么我有空对象引用   java优化项目Euler#22   java会因为多线程而覆盖代码中的DataSnapshot吗   java文件夹层次结构遍历   java在循环中动态创建方法   音频Java无法组合2个以上。wav文件   java在具有UTF8样式名称的文件夹/目录中运行可运行的JAR文件   java如何在具有动态根键时反序列化JSON