博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux下使用boost python (直接用g++生成动态库,不使用bjam)
阅读量:5280 次
发布时间:2019-06-14

本文共 615 字,大约阅读时间需要 2 分钟。

仿照 写一个例子

1 #include 
2 3 char const* greet() 4 { 5 return "hello, world"; 6 } 7 BOOST_PYTHON_MODULE(hello_ext) 8 { 9 using namespace boost::python;10 def("greet", greet);11 }

 

保存为hello_ext.cpp

 

然后用g++生成动态库

g++ hello_ext.cpp -shared -fPIC -o hello_ext.so -I /usr/include/python2.6 -lboost_python

 

当前目录下会生成一个hello_ext.so

 

然后就可以在python里使用了

>>>import hello_ext

>>>hello_ext.greet()

‘hello, world’

>>>

 

注意,BOOST_PYTHON_MODULE里的导出模块(hello_ext)必须与生成的so的名字相同,否则在python里import的时候会报‘dynamic module does not define init function’ 错误

 

转载于:https://www.cnblogs.com/bianjunjie/archive/2012/05/15/2501436.html

你可能感兴趣的文章
java获取hostIp和hostName
查看>>
关于web服务器和数据库的各种说法(搜集到的)
查看>>
C# Stream 和 byte[] 之间的转换
查看>>
OMG: daily scrum nine
查看>>
redis与spring结合错误情况
查看>>
第六章 字节码执行方式--解释执行和JIT
查看>>
字符串方法title()、istitle()
查看>>
yield语句
查看>>
查看linux系统中占用cpu最高的语句
查看>>
[洛谷P1738]洛谷的文件夹
查看>>
ubuntu server设置时区和更新时间
查看>>
【京东咚咚架构演进】-- 好文收藏
查看>>
【HTML】网页中如何让DIV在网页滚动到特定位置时出现
查看>>
文件序列化
查看>>
jQuery之end()和pushStack()
查看>>
Bootstrap--响应式导航条布局
查看>>
Learning Python 009 dict(字典)和 set
查看>>
JavaScript中随着鼠标拖拽而移动的块
查看>>
HDU 1021 一道水题
查看>>
The operation couldn’t be completed. (LaunchServicesError error 0.)
查看>>