pybind11学习 使用CMake构建系统并生成pyd文件
[TOC]
一 通过Visual Studio生成
在我之前的一篇文章pybind11学习 | VS2022下安装配置中,描述了如何通过配置VS2022实现pybind11项目构建和编译成Python拓展模块。
二 通过CMake生成
项目结构如下:

其中pybind11文件夹为从github上克隆的pybind11源码。
CMakeLists.txt
1 | |
pybind11_add_module是pybind11提供的一个CMake函数,用于简化pybind11项目的生成Python拓展模块的流程。pybind11_add_module语法如下:
1 | |
在项目源文件目录下,打开windows终端,执行下面命令:
1 | |
在cmake构建系统命令打印的结果中有下面一段:
1 | |
其中PythonInterp和PythonLibs是pybind11自动寻找的,前提是已经在系统环境变量中添加了Python路径。生成的build文件夹目录如下:

其中将example.sln通过VS打开,在VS中生成解决方案即可生成pyd文件。

当然,我们也可以直接通过在终端中输入如下命令,直接生成pyd文件。
1 | |
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!