2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

CMake Presets のメモ(CMake 3.24 以降利用推奨)

Posted at

背景

CMake の configure(bootstrap) めんどくさい...

CMake 3.20 から(正確には 3.19) configure の設定を json で記述できるようになっていました! :tada:

使い方

相変わらず公式のドキュメントは見ずらいです...

とりあえず CMakePresets.json 用意して,

$ cmake --preset <preset_name>

で configure してくれます! ディレクトリは勝手に作ってくれました.

3.24 で --fresh 対応

いままでは configure やり直したい場合, キャッシュなど消すためディレクトリを消して作り直しなどが必要でしたが,
3.24 からは --fresh で自動で CMakeCache.txt 消して reconfigure してくれるようになりました.

したがって 3.24 以降では

$ cmake --preset <preset_name> --fresh

が推奨ですかね.

あとは普通に今まで通りですが, cmake で preset を参照してビルドすることもできます.

$ cmake --build --preset <preset_name>

preset にそれぞれのタスク(build, test, package)に対応する処理の記述が必要です.

強制的にリビルドさせたい場合は --clean-first をつけておきます.

$ cmake --build --preset <preset_name> --clean-first

Workflow preset

あんまり情報がないですが, configure, build や test を一括して行えるようにする感じです.
CI ビルドとかで処理の記述がやりやすくなります.

ただあんまり複雑なことはできません.

いくつか改善は議論されているようです.

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?