【发布时间】:2022-01-03 03:07:28
【问题描述】:
我已经在这玩了好几个小时了,我很迷茫。这就是我的项目结构的样子,非常基本。
Project
- CMakeLists.txt
- src
- main.cpp
- class.cpp
- anotherClass.cpp
- include
- class.h
- anotherClass.h
我的 CMakeLists.txt 看起来像这样:
cmake_minimum_required(VERSION 3.22.1)
project(Project)
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
find_package(SDL2 REQUIRED)
include_directories(${SDL2_INCLUDE_DIRS})
file(GLOB_RECURSE HEADERS "include/*.h")
file(GLOB SOURCES "src/*.cpp")
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
add_executable(${PROJECT_NAME} ${SOURCES} ${HEADERS})
target_link_directories(${PROJECT_NAME} PRIVATE include)
target_link_libraries(${PROJECT_NAME} ${SDL2_LIBRARIES})
当我在“过滤器视图”或其他任何名称中构建 Visual Studio 项目时,所有头文件都显示在“头文件”下,所有源文件都显示在“源文件”下。没关系,但问题是我的实际文件夹结构不存在。所有源文件和头文件都捆绑在一起,看起来不太好。如何使构建具有上述项目结构?
【问题讨论】:
-
文件结构不正是你上面描述的吗?
-
我希望 CMake 构建一个具有该结构的 VS 项目。如果我在 VS 中打开解决方案,所有文件都捆绑在一起
-
但是你的结构的标题和正文是分开的,这就是你在 Visual Studio 中得到的,对吧?也许我看错了……
-
添加您当前项目结构的屏幕截图,以明确您使用的是什么结构。