Umleiten von CMake-Build-Ausgaben in ein „bin“-Verzeichnis
Beim Erstellen von Projekten mit Plugins mithilfe von CMake sind die kompilierten Binärdateien und Bibliotheken normalerweise verstreut innerhalb der Quellverzeichnisstruktur. Um diese Dateien zu organisieren, ist es notwendig, die Ausgabe von CMake in ein separates Verzeichnis zu leiten, z. B. „./bin“.
Die Lösung besteht darin, die entsprechende CMake-Variable festzulegen, um den gewünschten Ausgabepfad anzugeben. Dem Rat von Oleg folgend ist die richtige zu ändernde Variable CMAKE_RUNTIME_OUTPUT_DIRECTORY.
In der Stammdatei CMakeLists.txt können Sie das Ausgabeverzeichnis wie folgt angeben:
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)
Dadurch werden die Ausgabeverzeichnisse festgelegt für Archive, Bibliotheken und Laufzeitbinärdateien in ein Unterverzeichnis „lib“ und ein Unterverzeichnis „bin“ innerhalb der Binärdatei Verzeichnis.
Alternativ können Sie die Ausgabeverzeichnisse auf einer Basis pro Ziel angeben, indem Sie den Befehl set_target_properties verwenden:
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" )
Dieser Ansatz ermöglicht es Ihnen, verschiedene Ausgabeverzeichnisse für verschiedene Ziele anzugeben Feinere Kontrolle über den Build-Prozess.
In beiden Fällen können Sie „_[CONFIG]“ an die Variable oder anhängen Eigenschaftsname, um das Ausgabeverzeichnis für eine bestimmte Konfiguration festzulegen. Die Standardkonfigurationswerte sind DEBUG, RELEASE, MINSIZEREL und RELWITHDEBINFO.
Das obige ist der detaillierte Inhalt vonWie kann ich CMake-Build-Ausgaben in ein separates „bin'-Verzeichnis umleiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!