我正在为 C++ 游戏项目设置构建环境。我们的主要要求是不仅能够构建我们的游戏代码,还能够构建它的依赖项(Ogre3D、Cegui、boost 等)。此外,我们希望能够在 Linux 和 Windows 上构建,因为我们的开发团队由使用不同操作系统的成员组成。
Ogre3D 使用CMake作为其构建工具。这就是为什么到目前为止我们的项目也基于 CMake。一旦在每个团队成员系统上手动设置了所有依赖项,我们就可以完美编译,因为 CMake 能够找到库。
问题是是否有一种可行的方法来自动设置依赖项。作为一名 Java 开发人员,我知道 Maven,但 C++ 世界中确实存在哪些工具?
更新:感谢您提供好的答案和链接。在接下来的几天里,我将尝试一些工具来看看满足我们的要求,从 CMake 开始。到目前为止,我确实与 autotools 分享过,而且我非常喜欢文档(autobook 非常好读),但我担心 autotools 并不打算在 Windows 上原生使用。
你们中的一些人建议让一些 IDE 处理依赖关系管理。我们由个人组成,他们使用所有可能的技术来编写从纯 Vim 到成熟的 Eclipse CDT 或 Visual Studio 的代码。这是 CMake 允许使用一些灵活性的地方,它能够生成本机项目文件。