CODE $\Sigma$

2023/03/07
EigenをWindows CMakeで使う

EigenをWindows で使ったので、その備忘録です。

ダウンロード

Eigenのトップページにアクセスし、latest stableをダウンロードし、展開します。
基本的に必要なのは、Eigenのみです。

このEigenへのパスをコピーしておきます。

CMakeLists.txtの作成

CMakeLists.txtを作成し、Eigenとリンクする設定を記入します。

cmake_minimum_required (VERSION 3.8)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED true)

project ("TestProj" VERSION 0.0)

add_executable (${CMAKE_PROJECT_NAME} "${PROJECT_SOURCE_DIR}/src/main.cpp")
target_include_directories(${CMAKE_PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR}/path/to/Eigen)

重要なのは、この文です。

target_include_directories(${CMAKE_PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR}/path/to/Eigen)

PROJECT_SOURCE_DIRにCMakeLists.txtがあるディレクトリへのパスがBuild時に格納されます。

linkする文を書かずともEigenが使用可能になります。

Build

MinGWを用いてビルドするには、下記のコマンドを実行すればよいです。

# current directoryはCMakeLists.txtがある場所
mkdir build
cd build
cmake -S .. -B . -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug
cmake --build .