C++と色々

主にC++やプログラムに関する記事を投稿します。

自分用のCMakeのプロジェクトテンプレート書いてみた

こちら

github.com

動機

既にCMakeのテンプレートはいくつか存在しています。例えば

github.com

などです。しかしこれらはファイルや設定の量が多く、もしかしたら大規模なプロジェクトや設定したことが多い場合では良いのかもしれないですが、もっと小さいサンプルが欲しかったので作りました。また、自分で実際に手を動かして動作したものを作りたかったのもあります。

動作

WindowsのMSVCとLinuxgccで動作します。Macは手元に無いため、Mac用の設定を追加できませんでした。 gccとmsvcでそれぞれコンパイラオプションを設定し、ライブラリと実行ファイルを生成します。実際の開発でどちらかだけ生成できれば良い場合は使わない方の設定を消せば良いようにしています。

ビルドするとbinディレクトリとlibディレクトリが作成され、binディレクトリに実行ファイルが、libディレクトリに静的ライブラリが置かれます。 これはMSVCでもgccでも同じです。静的ライブラリはデバッグビルドだと d という接尾辞が付きます。 Visual Studioで開いても同じ動作になるようVS用の設定ファイルCMakeSettings.jsonも書きました。 distというCMakeの作業ディレクトリもできますが、VSのプロジェクトやCMakeCache.txtやMakefileが生成されるディレクトリです。消しても大丈夫です。

また、クロスプラットフォームなCMakeプロジェクトとは関係ありませんが、ついでにおまけとしてVSCodeとWSLで行うLinuxデバッグ設定ファイルもコミットしました。今後同じ環境で確認する時のベースの設定に使えると思います。