boost 1.55에다 python 3.3 환경에서 해봤다.
test.cpp:
#include <boost/python.hpp>
char const* greet()
{
return "hello, world";
}
BOOST_PYTHON_MODULE(hello_ext)
{
using namespace boost::python;
def("greet", greet);
}
컴파일:
$ g++ -shared -fPIC `python3-config --includes` `python3-config --libs` -lboost_python3 test.cpp -o hello_ext.so
hello_ext.so 파일이 생길 것이다. hello_ext.so 가 있는 곳에서 아래와 같이 해보자:
사용:
forcecore@forcecore:/dev/shm$ python3
Python 3.3.4 (default, Feb 11 2014, 15:56:08)
[GCC 4.8.2 20140206 (prerelease)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hello_ext
>>> hello_ext.greet()
'hello, world'
>>>
참 쉽죠?;;;