Search code examples
clion

Is there a way to work on multiple projects in CLion?


I'm looking for a way to work on multiple projects in parallel in CLion IDE.

For now I can only work on each project in a window at a time, but I'm looking for a solution similar to Eclipse IDE (see below) - being able to see my different projects' directories on a side bar and choosing the one I want, compiling it by itself, etc.

enter image description here

Is there a way to do it?


Solution

  • Yes: CLion doesn't allow you to open multiple projects from the menu because it uses the CMake system, which is script based.

    However, CMake is quite capable of encompassing multiple projects, and CLion will correctly parse your CMake file and show all relevant directories in the project explorer.

    Example

    To do this, just like in Visual Studio, you need a parent "solution" and one or more child "projects".

    Here is a simple CMake example in which "my_solution" references two child projects, "my_application" and "my_library". Here, my three folders are arranged:

    • xxx/my_solution/CMakeLists.txt
    • xxx/my_application/CMakeLists.txt
    • xxx/my_library/CMakeLists.txt

    And xxx/my_solution/CMakeLists.txt simply reads:

    cmake_minimum_required(VERSION 3.7)
    project(my_solution)
    
    add_subdirectory("${PROJECT_SOURCE_DIR}/../my_library" "${PROJECT_SOURCE_DIR}/my_library_output")
    add_subdirectory("${PROJECT_SOURCE_DIR}/../my_application" "${PROJECT_SOURCE_DIR}/my_application_output")
    

    Note that it is also permitted to put my_application and my_library within the my_solution directory, as in Visual Studio.