1. ホーム
  2. cmake

[解決済み] CMAKE_SOURCE_DIRはどこですか?

2022-02-28 05:01:20

質問

この変数には、常に CMakeLists.txt を実行するファイルです。 cmake の上に?

例えば cmake の上に CMakeLists.txt というファイルがカレントディレクトリの上のディレクトリに存在する場合、私は行くだろう。 cmake .. .

この場合、CMAKE_SOURCE_DIRは何に設定されているのでしょうか?

解決方法は?

2つのフォルダーがあると仮定して srcbuild ここで src にはあなたのプロジェクトが含まれ build は先ほど作成した空のフォルダで、その中にアウトオブツリービルドをデプロイできます。 CMAKE_SOURCE_DIR へのパスです。 src ここで CMAKE_BINARY_DIR を指しています。 build .

インツリービルドを行う場合、2つのキャッシュエントリーは同じ値を取得することに注意してください。

のリンクをクリックします。 CMakeの便利な変数 .


EDIT

より明確な説明のために

<some location>/src/CMakeLists.txt ( so *src* is the root of your project )
<some location>/build

というようなことをすると

cd <some location>/build
cmake <some location>/src

でツリー外ビルドを作成している場合。 CMAKE_SOURCE_DIRCMAKE_BINARY_DIR 異なる値を取得する