Manage CMake project files
In the Project tree, right-click the folder you want to add a file into and select New from the context menu. Choose the desired file type:
Specify the name, type, and additional options for the new file.
For C++ Class, C/C++ Source, C/C++ Header, and C++ Module Interface Unit templates, CLion will prompt you to add the new file to CMake targets. You can select existing targets or create new targets.
To add a new CMake target:
Click the Add new target link:
Specify the target type, name, and location. Then click Add:
The newly created target will appear in the list.
When you include a header or source file located under the project root into any project file, CLion treats it as a project file as well. There is no need to list such includes manually in CMakeLists.txt.
note
This does not apply to standard or third-party libraries located outside of the project root.
To add a file which is not included in any of the project files or CMake targets, do one of the following:
Click Add to CMake Project in the top-right corner of the editor:
You can select existing targets or create new targets.
Select one or several files in the Project tool window and choose Add <filename> to CMake Project from the context menu:
You can also add the files to the CMake project manually.
If the file is located under the project root, add it to a target using
add_executable()
oradd_library()
command.If the directory containing non-project sources is located under the project root, you can also mark it as library: right-click in the Project view and select Mark Directory As | Library Files from the context menu.
To use library files located outside the project root, you need to specify header search paths so that CLion can index the directories and provide completion and navigation for the
#include
statements:include_directories(${MY_EXTERNAL_SOURCE__DIR})
Where
MY_EXTERNAL_SOURCE__DIR
is the required external path.note
On Windows, make sure to replace back slashes in the path with forward slashes
/
, for example:include_directories(C:/Users/jetbrains/CLionProjects/clang/include)
For more information, refer to Quick CMake Tutorial: Adding include directories.
tip
Upon any of these actions, CLion will prompt you to reload the project (if automatic reload is disabled).
Thanks for your feedback!