setup(ext_modules = cythonize(["rsa_util.py"])) 1. 2. 3. 此段代码将执行生成wheel的过程,将.c文件打包成whl文件 from setuptools import setup from setuptools.dist import Distribution from distutils.core import Extension setup(name = 'rsa_util', version = '1.0', ext_modules = [Extension("...
ext_modules 指定扩展模块 scripts 指定可执行脚本,安装时脚本会被安装到系统 PATH 路径下 package_dir 指定哪些目录下的文件被映射到哪个源码包 entry_points 动态发现服务和插件,下面详细讲 python_requires 指定运行时需要的Python版本 requires 指定依赖的其他包 provides 指定可以为哪些模块提供依赖 install_requires ...
setup.py文件编写的规则是从 setuptools 或者 distuils 模块导入 setup 函数,并传入各类参数进行调用。 # coding:utf-8 from setuptools import setup # or # from distutils.core import setup setup( name='demo', # 包名字 version='1.0', # 包版本 description='This is a test of the setup', # 简...
所有由py_modules或packages指定的源码文件 所有由ext_modules或libraries指定的C源码文件 由scripts指定的脚本文件 类似于test/test*.py的文件 README.txt或README,setup.py,setup.cfg 所有package_data或data_files指定的文件 还有一种方式是写一个manifest template,名为,定义如何生成MANIFEST文件,内容就是需要包含在...
setup函数还有一些参数: 1、packages告诉Distutils需要处理那些包(包含__init__.py的文件夹)2、package_dir告诉Distutils哪些目录下的文件被映射到哪个源码包。一个例子:package_dir = {'': 'lib'},表示“root package”中的模块都在lib目录中。3、ext_modules是一个包含Extension实例的列表,Extension的定义也有一...
setup(# other arguments here...cmdclass={"install_scripts": InstallScripts } ) 其中,cmdclass参数表示自定制命令,后文详述。 ext_modules ext_modules参数用于构建 C 和 C++ 扩展扩展包。其是 Extension 实例的列表,每一个 Extension 实例描述了一个独立的扩展模块,扩展模块可以设置扩展包名,头文件、源文件、...
sfc_module = Extension('superfastcode2', sources=['module.cpp'], include_dirs=[pybind11.get_include()], language='c++', extra_compile_args=cpp_args, ) setup( name='superfastcode2', version='1.0', description='Python package with superfastcode2 C++ extension (PyBind11)', ext_modules=[...
from distutils.coreimportsetupsetup(name='foo',version='1.0',py_modules=['foo'],) setup函数的参数表示提供给Distutils的信息,这些参数分为两类:包的元数据(包名、版本号)以及包的信息(本例中是一个Python模块的列表);模块由模块名表示,而不是文件名(对于包和扩展而言也是这样);建议可以提供更多的元数据,...
from setuptools import setup, Extension sfc_module = Extension('superfastcode', sources = ['module.cpp']) setup( name='superfastcode', version='1.0', description='Python Package with superfastcode C++ extension', ext_modules=[sfc_module] ) PyBind11 (superfastcode2 專案): Python 複製 from...
Extension( 'superfastcode2', sources=['module.cpp'], include_dirs=[pybind11.get_include()], language='c++', extra_compile_args=cpp_args, ) setup( name='superfastcode2', version='1.0', description='Python package with superfastcode2 C++ extension (PyBind11)', ext_modules=[sfc_module...