example.i, example.h, example.cppを作ってコマンドラインから
Cだけなら
$ swig -python example.i
C++なら
$ swig -c++ -python example.i
とすると
example_wrap.cxx
とexample.pyができる。
CMakeList.txtにむにゃむにゃと
#-----------------------------------------------------------------------------
set (BoostPython_SRCS
example.cxx
example.h
example.i
example_wrap.cxx
)
#-----------------------------------------------------------------------------
add_library(example SHARED ${BoostPython_SRCS})
target_link_libraries(example debug boost_python-vc80-mt-gd-1_39 debug ${PYTHON_DEBUG_LIBRARIES}
optimized boost_python-vc80-mt-1_39 optimized ${PYTHON_LIBRARIES})
target_link_libraries(example boost_python-vc80-mt-gd-1_39 ${PYTHON_LIBRARIES} )#-----------------------------------------------------------------------------
何てやってから、ビルドするとexample.dllができる。
できたexample.dllを_example.pydと名前を変えてC:Python26/DLLsの下に置く。
ついでにexample.pyもそこへ置く。
後は、
$ python
>>>import example
>>>
と読み込めればOK
VS2005でコンパイルしてもOK