Qt
CMakeLists.txt für Ihr Qt-Projekt
Suche…
CMakeLists.txt für Qt 5
Eine minimale CMake-Projektdatei, die Qt5 verwendet, kann Folgendes sein:
cmake_minimum_required(VERSION 2.8.11)
project(myproject)
find_package(Qt5 5.7.0 REQUIRED COMPONENTS
Core
)
set(CMAKE_AUTOMOC ON)
add_executable(${PROJECT_NAME}
main.cpp
)
target_link_libraries(${PROJECT_NAME}
Qt5::Core
)
cmake_minimum_required
wird aufgerufen, um die minimal erforderliche Version für CMake cmake_minimum_required
. Für dieses Beispiel ist mindestens die Version 2.8.11
- frühere Versionen von CMake benötigen zusätzlichen Code, damit ein Ziel Qt verwenden kann.
find_package
wird aufgerufen, um eine Installation von Qt5 mit einer bestimmten Version - 5.7.0 im Beispiel - und gewünschten Komponenten - Core-Modul im Beispiel zu suchen. Eine Liste der verfügbaren Module finden Sie in der Qt-Dokumentation . Qt5 ist in diesem Projekt als REQUIRED
markiert. Der Pfad zur Installation kann durch Setzen der Variablen Qt5_DIR
.
AUTOMOC
ist ein Boolescher AUTOMOC
angibt, ob CMake den Qt- moc
Präprozessor automatisch behandelt, dh, ohne das Makro QT5_WRAP_CPP()
.
Andere "AUTOMOC-ähnliche" Variablen sind:
AUTOUIC
: Ein boolescherAUTOUIC
angibt, ob CMake denuic
Codegenerator automatisch behandelt, dh ohne das MakroQT5_WRAP_UI()
.AUTORCC
: Ein boolescherAUTORCC
angibt, ob CMake den Qt-rcc
Codegenerator automatisch behandelt, dh ohne das MakroQT5_ADD_RESOURCES()
.
add_executable
wird aufgerufen, um aus den angegebenen Quelldateien ein ausführbares Ziel zu erstellen. Das Ziel wird dann mit dem Befehl target_link_libraries
mit den aufgelisteten Qt-Modulen target_link_libraries
. Von CMake 2.8.11 aus behandeln target_link_libraries
mit den importierten Qt-Zielen Linker-Parameter sowie Include-Verzeichnisse und Compiler-Optionen.