2016-08-18 79 views
0

我正在用C++编写一个多平台(windows和Linux)应用程序,使用boost asio。我以前有使用Gradle进行自动化Java依赖管理的经验,并发现C++的工具不太好。目前我发现的最好的是视觉工作室的nuget。C++依赖管理最佳实践

我的问题是,当没有好的自动化依赖管理工具时,在github上发布项目的最佳做法是什么?我是否应该提供关于如何设置构建环境以及如何下载第三方依赖项的文档页面,还是应该提供编译项目所需的一切内容?

如果可能的话,也请尽量提供你的答案的理由。谢谢。

回答

1

从我的观察来看,提供关于如何设置构建环境的文档是一种常规方法。

它可以使您的项目更便携。也就是说,用户可以选择他们想要构建的依赖关系。由于依赖关系的更新,您不必更新项目。

您需要牢记的一件事非常重要,那就是您应该考虑如何简化建筑问题。确保您的项目足够普遍以适应依赖关系。该文件应该清晰和紧凑。

+1

理想情况下,我想删除用户必须找到特定版本的文件的需要。到目前为止,我已经使用cmake的find和git子模块。 https://foonathan.github.io/blog/2016/07/07/cmake-dependency-handling.html –