pybind11库_pylab库安装

pybind11库_pylab库安装pybind11

01 pybind11 库

pybind11 只需包含头文件,即可完成python与c++的相互调用。对编译要求较高。

pybind11\include\pybind11\detail\common.h line60 error pybind11 requires Xcode/clang 5.0 or newer line64 error pybind11 requires gcc 4.8 or newer line70 error pybind11 requires MSVC 2015 update 3 or newer

github:https://github.com/pybind/pybind11
官网文档:http://pybind11.readthedocs.io/en/master/

最简单的example,保存在 https://github.com//cpp_demo

test03.py 调用 test01.cpp中的add方法。
test02.cpp调用 test04.py 中的add方法。

test01.cpp

#include <pybind11/pybind11.h> namespace py = pybind11; int add(int i, int j) { return i + j; } PYBIND11_MODULE(test01, m) { m.doc() = "pybind11 test01 plugin"; // optional module docstring m.def("add", &add, "A function which adds two numbers"); }

test03.py

import test01 print("test01.add(3, 4) = ", test01.add(3, 4)) print("test01.add(8, 9) = ", test01.add(8,9))

test02.cpp

#include <pybind11/embed.h> #include <iostream> namespace py = pybind11; int main() { py::scoped_interpreter python; py::module sys = py::module::import("sys"); py::print(sys.attr("path")); py::module t = py::module::import("test04"); t.attr("add")(1, 2); return 0; }

test04.py

"""test04.py located in the working directory""" def add(i, j): print("hello,pybind11") return i + j

使用cmake-gui设置 python的头文件路径和lib库路径。即可。需要vs2015update3+。
这里写图片描述

运行结果
这里写图片描述

今天的文章
pybind11库_pylab库安装分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/89823.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注