用于rust扩展的setuptools插件
您可能希望签出pyo3-pack,此项目的后续项目,它允许在不进行任何配置的情况下开发、生成和上载
使用PyO3和rust-cpython实现的rust python扩展的setuptools帮助程序。
编译和分发用rust编写的python扩展就像
它们是用c写成的。
设置
首先,您需要创建一组文件:
设置.pyfromsetuptoolsimportsetupfromsetuptools_rustimportBinding,RustExtensionsetup(name="hello-rust",version="1.0",rust_extensions=[RustExtension("hello_rust.hello_rust",binding=Binding.PyO3)],packages=["hello_rust"],# rust extensions are not zip safe, just like C-extensions.zip_safe=False,)
在中显示
生成源发行版时需要此文件include Cargo.toml
recursive-include src *
pyproject.toml[build-system]requires=["setuptools", "wheel", "setuptools-rust"]
制造轮子。sh#!/bin/bashset -ex
curl https://sh