如何將 CMake 輸出重新導向到特定目錄?
您的專案結構包括在單獨目錄中編譯的插件。雖然 CMake 成功編譯這些插件,但您面臨在來源目錄結構之外定位二進位檔案和動態庫的挑戰。本文旨在指導您配置 CMake 將這些檔案保存在特定目錄中,例如「./bin」。
根據答案的建議,您可以使用 CMAKE_RUNTIME_OUTPUT_DIRECTORY 變數指定所需的輸出目錄。以下是在根 CMakeLists.txt 中實現此功能的方法:
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
透過設定這些變量,CMake 會將編譯後的工件放置在相對於建置目錄 (CMAKE_BINARY_DIR) 的指定目錄中。
或者,您可以在每個目標上設定輸出目錄基礎:
set_target_properties(targets... PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" )
您可以將「_[CONFIG]」附加到變數/屬性以指定特定配置(例如DEBUG 、RELEASE)的輸出目錄。透過適當配置 CMake,您可以有效管理專案的編譯輸出,確保二進位和外掛程式組織在所需的目錄結構中。
以上是如何將 CMake 建置輸出重新導向到自訂目錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!