cent os
1) 安装python
yum install python26
2) 安装python devel
yum search python | grep -i devel
yum install python-devel.x86_64 =====================否则一堆怪异的找不到头文件错误
3) 库、include
-lboost -lboost_python -lpython2.6
-I/usr/include/python2.6/
4) 安装boost
-lboost -I/usr/local/boost
安装boost_python。 默认boost不是完全安装?
1)编译bjam
sh ./bootstrap.sh
sh ./bootstrap.sh
2)编译boost python
进入boost源码目录,执行
sudo ./bjam -toolset=gcc --with-python --with-python --layout=tagged --build-type=complete stage
顺利完成后,将在stage目录下生成相应的lib
======================================使用===========================================
1) c/c++编译成so
2) so中增加代码行
python是boost::python名字空间。
def的第一个参数是导出给python调用的; 第二个参数是c/c++函数
其中, MODULE名字和so的名字必须相同(不用带.so); BOOST_PYTHON_MODULE只能有一个, 否则就会报错重定义。
BOOST_PYTHON_MODULE(libcheck) { python::def("CheckInit", CheckInit); python::def("CheckCaseClassIdContinous", CheckCaseClassIdContinous); python::def("GetOKMessages", GetOKOKMessages); python::def("GetERMessages", GetERERMessages); }