为了完成一个项目的长时间编码会话,我想测试我的 CPP 项目是否可以在操作系统的安排上编译。
我一直在Win10中工作。编译良好。
我试过树莓派。编译良好。我将我的项目的单独副本重新下载到 Win10 客户端,运行 cmake-gui,然后打开项目:我在解决方案资源管理器中的文件夹结构全部消失。
所以我开始四处挖掘,显然这个结构用 command 保存在 CMakeLists.txt 中source_group
。所以我开始在我的 cmake 列表中添加更多的 source_groupings,并且由于某种原因我的分组不会被占用。
例子:
source_group("game\\entitysystem" FILES ${entitysystem_SRC}) // Existing grouping
source_group("game\\entitysystem\\components" FILES ${components_SRC}) // My new grouping
我的 glob 是这样的:
file(GLOB components_SRC
"game/components/*.h"
"game/components/*.cpp"
)
file(GLOB entitysystem_SRC
"game/entitysystem/*.h"
"game/entitysystem/*.cpp"
)
我相信我的 GLOB 是正确的,因为新的项目克隆编译得很好。只是 Visual Studio 的解决方案资源管理器中新结构的每个部分似乎都丢失了。是的,我已经清除了 Cmake 的缓存并重新生成了项目。不改变它。
编辑:
我确实在我的 source_group 中犯了一个错误,因为它不应该将组件放在实体系统下,但是,为什么在 Visual Studio 中没有创建任何过滤器?