Diciamo che abbiamo un progetto con solo un main.cpp e noi Wanto aggiungere foo.cpp: Il CMakeList.txt originale è la seguente:
cmake_minimum_required(VERSION 3.6)
project(ClionProject)
set(CMAKE_CXX_STANDARD 11)
set(SOURCE_FILES main.cpp)
add_executable(ClionProject ${SOURCE_FILES})
Ora dobbiamo aggiungere foo.cpp
cmake_minimum_required(VERSION 3.6)
project(ClionProject)
set(CMAKE_CXX_STANDARD 11)
set(SOURCE_FILES main.cpp foo.cpp)
add_executable(ClionProject ${SOURCE_FILES})
Così abbiamo changesd la linea set(SOURCE_FILES main.cpp foo.cpp)
per aggiungere la cpp possiamo anche aggiungere i file .h in là.
ATTENZIONE! TUTTI I FILES DEVONO ESSERE SULLA cartella CMakeList.txt! in caso contrario, ricorda di aggiungere il percorso in là.
V'è anche un modo per rendere Clion per aggiungere tutti i file cpp e H (non so perché non lo fanno di default) ed è quello di aggiungere questa linea:
file(GLOB SOURCES
*.h
*.cpp
)
e anche add_executable (ClionProject $ {SOURCE_FILES} $ {SOURCES})
In questo esempio: ClionProject è in realtà il nome del progetto. SOURCES_FILES e SOURCES possono essere cambiati yo quello che vuoi.
Un'altra buona idea è quella di andare su File -> Impostazioni -> Crea, Execution, Distribuzione -> CMake e spuntare su "Progetto automatico di ricarica CMake sulla modifica"
Ecco un buon tutorial di partenza: https://www.jetbrains.com/help/clion/2016.3/quick-cmake-tutorial.html
fonte
2017-02-04 18:24:32
Possibile duplicato di [CMake - Aggiungi automaticamente tutti i file in una cartella a una destinazione?] (Http://stackoverflow.com/questions/3201154/cmake-automatically-add-all-files-in-a-folder-to- a-target) – learnvst
Com'è correlato a C e C++? – fuz
Prova a tenere C separato dal linguaggio C++. Nonostante la loro somiglianza, sono lingue diverse, ognuna con i suoi, diversi, alti e bassi. – pmg