我想知道正确的方法。例如,假设您有许多使用boost的项目(解决方案的一部分)。让我们假设你想把boost包放在解决方案中,这样整个东西就更便携了。
你是怎么做到的?您是否在解决方案中的目录中安装了boost?你能用相对目录引用它,所以它不可移植吗?
在Linux下,为了完整性,可以将tarball存储在受控制的代码中,但是由开发人员将其删除并安装它。我想知道如何在visual studio下完成这项工作(最佳实践)。
[注意:我理解这可能会使解决方案变得更大,但好处是一个开发环境,无需为每个访问代码的开发系统提供一堆软件包安装即可立即运行。
答案 0 :(得分:0)
在这种情况下,您可以使用visual studio中的nuget包管理器将nuget boost包添加到您的解决方案中,然后可以将boost提供给需要它的项目。然后,您可以启用包还原,这样无论何时构建解决方案,如果解决方案中缺少boost文件,那么nuget将在构建时恢复它们。
如果您还没有,则需要为visual studio安装nuget包管理器插件。
如果在nuget上没有包裹,那么有很多选择;您可以构建包然后引用已构建的程序集 - 您只需将所需的程序集存储在引用目录中。如果您使用源代码控制软件Svn或tfs可能是git(我不知道)那么您可以将它们存储在源代码管理中,然后通过链接将它们包含在目标解决方案中。我能想到的最后一个选项是你可以将包构建到nuget包中,然后将结果存储在你自己的私有nuget商店中,visual studio允许这样做。哪种解决方案适合您,取决于项目的大小,开发团队和您使用的源控制软件。