2024年12月3日 星期二

CMAKE_BINARY_DIR 說明

 CMAKE_BINARY_DIR 是 CMake 中的預設變數,通常不需要手動設置。它指的是 CMake 構建目錄(通常是你執行 cmake 命令時指定的目錄)。這個變數指向 CMake 的輸出目錄,即 CMake 的構建產物會放在這裡。

因此,通常情況下,你不需要明確設置 CMAKE_BINARY_DIR,因為它會自動設置為 CMake 生成的構建目錄路徑。你只需要利用它來引用構建目錄中的文件和執行檔案。

關於 CMAKE_BINARY_DIR 的詳細說明:

  • CMAKE_BINARY_DIR 是你執行 cmake 命令時的當前目錄(例如 cmake -B build 中的 build 目錄)。
  • 它是構建過程中用來存放所有中間文件、生成的執行檔案和庫的地方。
  • 使用 CMAKE_BINARY_DIR 可以讓你動態地引用構建目錄中的內容,無論這些文件在系統中被放置在哪裡。

在範例中的使用

在我們的範例中,你會看到這樣的用法:

set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")

這行的目的是告訴 CMake 把執行檔案放到構建目錄下的 bin 子目錄。這樣,在構建專案後,執行檔案會自動放置在 build/bin 目錄,而不需要手動指定。

使用 CMAKE_BINARY_DIRrun_app 目標中的例子:

add_custom_target(run_app
COMMAND ${CMAKE_COMMAND} -E env QT_QML_PLUGIN_PATH="C:/Qt/6.6.0/mingw_64/qml" ${CMAKE_BINARY_DIR}/bin/MyQtApp DEPENDS MyQtApp )

在這裡,CMAKE_BINARY_DIR 被用來指定應用程式的可執行文件路徑。假設你的構建目錄是 build,這會指向 build/bin/MyQtApp,並且這裡的 MyQtApp 就是你構建後的應用程式。

沒有留言:

張貼留言