cmake を使ってインストールするのだけど、apt-getで入る boost (/usr/ 以下) ではなく /usr/local にインストールされてしまうので、 cmake .. をやったあとに
if(NOT DEFINED CMAKE_INSTALL_PREFIX)
set(CMAKE_INSTALL_PREFIX "/usr")
endif()
を弄くるか、
cmake -D CMAKE_INSTALL_PREFIX= /usr ..
とすると、コンパイラへのディレクトリへの指定が最低限で済みます。
CMakeLists.txt はこんな感じ。
cmake_minimum_required(VERSION 2.8)
# set(CMAKE_VERBOSE_MAKEFILE 1)
find_package(Boost COMPONENTS python REQUIRED)
find_package(PythonLibs REQUIRED)
include_directories(${Boost_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS})
#add_library(mymodule SHARED core.cpp)
add_executable(mymodule core.cpp)
target_link_libraries(mymodule ${Boost_LIBRARIES} ${PYTHON_LIBRARY} boost_numpy)
これで、Boost.Numpy チュートリアルのプログラムが動きます。
やりたいこと
シリアスなアルゴリズム開発の効率化です。
Boost.Numpy を使うと、同じメモリを Numpy と C++ から使えるので、アルゴリズムを開発する時に必要になる「統計処理、Visualization、並列処理のためのスクリプティング」等を Python で行いつつ、コアのアルゴリズムを C++ で書くことが可能になります。すると、「1000個のデータで試す」みたいなことが気軽にできるようになり、プログラムの開発サイクルが早くなります。
Boost.Python はよくわかんないのでこっちを使います。つかえりゃなんでもいいです。
No comments:
Post a Comment