C++ 如何在CLion中编译子目录文件?
我有一个名为C++ 如何在CLion中编译子目录文件?,c++,c,cmake,clion,C++,C,Cmake,Clion,我有一个名为CPrimerPlus6thEdition的项目。我试图编译一个名为FirstLastNames.c的独立程序,它有自己的intmain()函数。这是我的文件夹结构 /CPrimerPlus6thEdition |-- /ProgrammingExercises |-- /2IntroducingC |--FirstLastNames.c CMakeLists.txt main.cpp 这是我的CMakeLists.txt文件 cmake_minim
CPrimerPlus6thEdition
的项目。我试图编译一个名为FirstLastNames.c
的独立程序,它有自己的intmain()
函数。这是我的文件夹结构
/CPrimerPlus6thEdition
|-- /ProgrammingExercises
|-- /2IntroducingC
|--FirstLastNames.c
CMakeLists.txt
main.cpp
这是我的CMakeLists.txt
文件
cmake_minimum_required(VERSION 3.2)
project(CPrimerPlus6thEdition)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(SOURCE_FILES main.cpp)
add_executable(CPrimerPlus6thEdition ${SOURCE_FILES})
add_executable(CPrimerPlus6thEdition/ProgrammingExercises/2IntroducingC ${SOURCE_FILES})
第一个参数不是目录/路径,而是目标的名称(以及编译的可执行文件的名称)
尝试将此替换为CMakeLists.txt
文件的最后两行(我假设/CPrimerPlus6thEdition
是CLion项目的根):
如果您有另一个可执行文件要编译,并且说它在/CPrimerPlus6thEdition/ProgrammingExercises/3Potato中,并且有需要编译和链接的Potato.c和Soil.c文件:
add_executable(Potato ProgrammingExercises/3Potato/Potato.c ProgrammingExercises/3Potato/Soil.c)
请注意,FirstLastNames
和Potato
是目标名称,是生成后编译的可执行文件的名称
add_executable(CPrimerPlus6thEdition ${SOURCE_FILES})
add_executable(FirstLastNames ProgrammingExercises/2IntroducingC/FirstLastNames.c)
add_executable(Potato ProgrammingExercises/3Potato/Potato.c ProgrammingExercises/3Potato/Soil.c)