cmake C++ 17 by default
-
wrote on 23 Oct 2020, 09:48 last edited by
Hallo,
ich nutze den Qt Creator 4.13.1 unter Manjaro und habe eine einfache Frage, die ich nach langer Recherche leider nicht selbst beantworten kann.
Ich möchte, dass Qt Creator mit cmake standartmäßig C++ 17 verwendet, sodass ich nicht bei jedem neuen Projekt die Projektdatei oder die cmakelists.txt manuell ändern muss.Versucht habe ich es über die Kit Konfiguration (cmake configuration) mit:
CMAKE_CXX_STANDARD 17:INTERNAL={#:20}
leider hat das keinen Einfluss auf die cmakelists.txt.
Wie kann ich das umsetzen, kann mir da vielleicht jemand weiterhelfen?
Danke schonmal und Gruß
HDMIKabel ^^ -
Hallo,
ich nutze den Qt Creator 4.13.1 unter Manjaro und habe eine einfache Frage, die ich nach langer Recherche leider nicht selbst beantworten kann.
Ich möchte, dass Qt Creator mit cmake standartmäßig C++ 17 verwendet, sodass ich nicht bei jedem neuen Projekt die Projektdatei oder die cmakelists.txt manuell ändern muss.Versucht habe ich es über die Kit Konfiguration (cmake configuration) mit:
CMAKE_CXX_STANDARD 17:INTERNAL={#:20}
leider hat das keinen Einfluss auf die cmakelists.txt.
Wie kann ich das umsetzen, kann mir da vielleicht jemand weiterhelfen?
Danke schonmal und Gruß
HDMIKabel ^^@HDMIKabel If you want to use a specific C++ standard you should really define that in CMakeLists.txt, else - what will happen if somebody else tries to build the project on his/her machine? For me this is clearly a project setting belonging into CMakeLists.txt.
-
@HDMIKabel If you want to use a specific C++ standard you should really define that in CMakeLists.txt, else - what will happen if somebody else tries to build the project on his/her machine? For me this is clearly a project setting belonging into CMakeLists.txt.
@jsulm ich glaube was @HDMIKabel meint ist wie er das Macro/DefaultSetup erweitern kann, damit automatisch generierte default CMakeList.txt um
set (CMAKE_CXX_STANDARD 17)
erweitertKa ob das einfach möglich ist 🤷♂️
-
wrote on 23 Oct 2020, 11:55 last edited by HDMIKabel
@J-Hilk @jsulm
Genau das meine ich :)Meinem Verständnis nach wird das ja von qt definiert.
Im Moment steht in jeder generierten cmakelists.txt eines neu erstellten Projektsset(CMAKE_CXX_STANDARD 11)
Das muss ja irgendwo herkommen.
-
Es kommt aus template Dataien in Qt Creator install dir:
- QtCreator/share/qtcreator/templates/wizards/projects/consoleapp/CMakeLists.txt
- QtCreator/share/qtcreator/templates/wizards/projects/cpplibrary/CMakeLists.txt
- QtCreator/share/qtcreator/templates/wizards/projects/plaincpp/CMakeLists.txt
- und so weiter
1/6