Sie müssen einen CMakeLists.txt
erstellen damit CLion glücklich ist. Es reicht aus, alle Quelldateien zu deklarieren, Sie müssen Ihre Scons (oder ein anderes Build-System) nicht in cmake konvertieren.
Sie müssen die CMakeLists.txt nicht einmal von Hand schreiben, Sie können CLion darum bitten:
File | New CMake Project from Sources...
(seit CLion 2019.2)File | Import project ... |
(älterer CLion)
und zeigen Sie dann auf das Verzeichnis, das Ihr Projekt enthält.
Bearbeiten Sie nun die generierte CMakeLists.txt
und fügen Sie einen cmake-Befehl hinzu, um CLion mitzuteilen, wo die Includes zu finden sind (eigentlich um dem Compiler mitzuteilen, und CLion wird diese Informationen wiederverwenden).
Da Ihre Quelldateien das Include als #include "my_includes/my_own.hpp"
verwenden müssen Sie cmake das Basisverzeichnis mitteilen, das das Verzeichnis my_includes
enthält :
include_directories(.)
Wobei der Punkt dasselbe Verzeichnis bedeutet wie dasjenige, das den CMakeLists.txt
enthält .
Ich habe mit einem Projekt getestet, das Ihr Layout und von my_src.cpp
reproduziert Ich kann zu my_own.hpp
navigieren .
Dann müssen Sie zum Erstellen immer noch Scons in einer Konsole verwenden. Es ist auch möglich, einen cmake-Befehl hinzuzufügen, add_custom_target()
das wird Ihre Scons (oder Ihr Make oder was auch immer) aufrufen, sodass Sie auch von CLion zu den Build-Fehlern navigieren können.