Я столкнулся с проблемой, я хочу скомпилировать все мои исходные файлы, но у каждого из них есть основной метод.Моя идея состояла в том, чтобы взять cmake и запустить для каждого оператора и создать для них исполняемый файл.
file(GLOB_RECURSE my_c_list RELATIVE ${CMAKE_SOURCE_DIR} "src/*")
foreach(file_path ${my_c_list})
message(${file_path})
string( REPLACE ".c" "" name ${file_path} )
add_executable( ${name} ${my_c_list} )
endforeach()
Структура папок следующая:
|-- CMakeLists.txt
+-- src
| +-- Chapter 1
| +-- 1.0.1
| someCode.c
| +-- 1.0.2
| ohAFunction.c
| +-- Chapter 2
| +-- 2.0.1
| lookCode.c
Эти фрагменты взяты из здесь
К сожалению, это не работает, вы не могли бы мне помочь?
Кстати, я запускаю CLion, и CLI оба не работают.
РЕДАКТИРОВАТЬ: Рабочая CMakeLists.txt
file(GLOB_RECURSE my_c_list RELATIVE ${CMAKE_SOURCE_DIR} "src/*")
foreach(file_path ${my_c_list})
string( REPLACE ".c" "" new_name ${file_path} )
get_filename_component(filename ${new_name} NAME)
add_executable( ${filename} ${file_path} )
endforeach()