我有一个包含许多独立模块(可执行和.so文件)的大型存储库,其中一些依赖于其他模块(并且依赖于第三方库,这些库不在存储库中)。
我希望能够仅拉取此存储库中的一个模块,并能够独立构建它。
顺便说一句 - 我在Linux和Windows环境中使用scons作为构建工具。
我在此网站(以及更多网站)上看到此问题有两种解决方法:
1. 在每个模块存储库中创建名为“dependency”或任何类似名称的目录,并将所有此模块依赖的存储库设置为此目录中的子存储库。
问题: - 它不能解决我SCM中未处理的第三方问题。 - 它使构建过程变得非常缓慢 - 它很丑陋,在我的基础项目目录中有许多重复项。
2. 创建“二进制存储库”或“构建工件存储库”并使用其管理依赖项。
这看起来像是我最好的解决方案,但我不知道如何实际操作。
我看到了C# Windows开发人员使用NuGet(以及少量C++但仅限于Windows),Java开发人员使用Ivy / Maven,但找不到任何工具可以处理C++。
我的问题是 - 如何使用C++代码创建依赖项管理?
我希望能够仅拉取此存储库中的一个模块,并能够独立构建它。
顺便说一句 - 我在Linux和Windows环境中使用scons作为构建工具。
我在此网站(以及更多网站)上看到此问题有两种解决方法:
1. 在每个模块存储库中创建名为“dependency”或任何类似名称的目录,并将所有此模块依赖的存储库设置为此目录中的子存储库。
问题: - 它不能解决我SCM中未处理的第三方问题。 - 它使构建过程变得非常缓慢 - 它很丑陋,在我的基础项目目录中有许多重复项。
2. 创建“二进制存储库”或“构建工件存储库”并使用其管理依赖项。
这看起来像是我最好的解决方案,但我不知道如何实际操作。
我看到了C# Windows开发人员使用NuGet(以及少量C++但仅限于Windows),Java开发人员使用Ivy / Maven,但找不到任何工具可以处理C++。
我的问题是 - 如何使用C++代码创建依赖项管理?