ImportError: dynamic module does not define module export function (PyInit_example)

在使用vs2015编译pyd文件后遇到ImportError: dynamic module does not define module export function (PyInit_example)的问题。错误源于pybind11模块导出函数未正确定义。解决方案包括确保PYBIND11_MODULE宏定义的模块名与pyd文件名一致,并正确声明函数和变量。
摘要由CSDN通过智能技术生成

 

vs2015编译pyd后,报错:

 

ImportError: dynamic module does not define module export function (PyInit_example)

原因:

 

PYBIND11_MODULE(binddemo, m)
{
    // optional module docstring
    m.doc() = "pybind11 example plugin";
    // expose add function, and add keyword arguments and default arguments
    m.def("add", &add, "A function which adds two numbers", py::arg("i") = 1, py::arg("j") = 2);

    // exporting variables
    m.attr("the_answer") = 42;
    py::object world = py::cast("World");
    m.attr("what") = world;
}

 

binddemo 这个需要和pyd的名字保持一致

add就是函数的名字

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI算法网奇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值