【Pybind11】pybind11在visual studio中的配置

简介: 【Pybind11】pybind11在visual studio中的配置

以下是pybind11在visual studio2019中的配置,这里我使用的python版本是3.6,只要是3.9以下的python应该都可以,配置比较简单,比较适合小白。

步骤一:下载pybind11

下载pybind11,解压到磁盘中。点此可下载 比如,我解压的位置是:E:\pybind11-master

步骤二:配置属性>>常规>>配置类型

打开VS,右键点击工程选择属性,配置属性>>常规>>配置 设置成dll。

步骤二:配置属性>>常规>>VC++目录

设置一:配置属性>>常规>>VC++目录>>包含目录:

python 的 include 目录: C:\xxxx\Python\Python36\include

pybind11 的 include 目录: E:\pybind11-master\include

设置二:配置属性>>常规>>VC++目录>>库目录:

python 的 libs 目录:C:\xxxx\Python\Python36\libs

如下所示:

步骤三:链接器>>输入>>附加依赖项

链接器>>输入>>附加依赖项 设置python相关依赖的lib。

这里,我们主要用的是python36.lib 和 python3.lib,这两个lib在python路径的libs文件夹中(C:\xxx\Python\Python36\libs)

步骤四:运行测试

输入以下代码,选择项目,点击生成(生成或重新生成!!!!),如果显示成功即可说明pybind11已经链接成功了哦!

#include <pybind11\pybind11.h>
#include <iostream>
void age(double age) {
    std::cout << "age = " << age << std::endl;
}
std::string Name(std::string& name) {
    std::cout << "Name: " << name << std::endl;
    return name;
}
namespace py = pybind11;
PYBIND11_MODULE(example1, m)
{
    m.doc() = "The general function";
    m.def("age", &age);
    m.def("Name", &Name);
}

步骤五:python调用

将生成的dll改成pyd后缀,并重命名为example1(与PYBIND11_MODULE名称相同),然后,复制到py同级目录中就可以调用了。

import example1
a = 10.5
example1.age(a)
b = "lcl"
c = example1.Name(b)
print(c)

运行结果

age = 10.5

Name: lianchangle

lianchangle

如果对您有帮助,收藏+关注+点赞再走吧!!!

相关文章
|
2月前
|
JSON C++ 数据格式
【C++】Visual Studio C++使用配置Json库文件(老爷式教学)
【C++】Visual Studio C++使用配置Json库文件(老爷式教学)
|
27天前
|
C++
新手小白第一次使用VisualStudio的简单配置教程
新手小白第一次使用VisualStudio的简单配置教程
|
2月前
|
存储 C++
【C++】Visual Studio C++ 配置并使用gtest(不好用你捶我)
【C++】Visual Studio C++ 配置并使用gtest(不好用你捶我)
|
2月前
|
JavaScript
Visual studio Code 配置用户代码片段---Vue为例
Visual studio Code 配置用户代码片段---Vue为例
|
2月前
|
定位技术 C++
Visual Studio复制、拷贝C++项目与第三方库配置信息到新的项目中
Visual Studio复制、拷贝C++项目与第三方库配置信息到新的项目中
|
2月前
|
定位技术 计算机视觉 C++
C++计算机视觉库OpenCV在Visual Studio 2022的配置方法
C++计算机视觉库OpenCV在Visual Studio 2022的配置方法
100 1
|
2月前
|
定位技术 开发工具 C++
C++绘图库matplotlibcpp在Visual Studio中的配置方法
C++绘图库matplotlibcpp在Visual Studio中的配置方法
131 1
|
2月前
|
编译器 数据处理 C++
Visual Studio配置并编译C++环境下GDAL库、SQLite环境与PROJ库的方法
Visual Studio配置并编译C++环境下GDAL库、SQLite环境与PROJ库的方法
126 1
|
2月前
|
定位技术 数据处理 C++
Visual Studio软件调用已经配置、编译好的C++第三方库的方法
Visual Studio软件调用已经配置、编译好的C++第三方库的方法
|
2月前
|
存储 定位技术 C++
Armadillo矩阵库在Visual Studio软件C++环境中的配置方法
Armadillo矩阵库在Visual Studio软件C++环境中的配置方法