要从分发中删除的安全文件?

时间:2011-11-01 20:38:33

标签: c++ boost directory-structure

编辑:看来BCP做了我想做的事:Building a subset of boost in windows

我正在尝试分发包含我的C ++源代码的Visual Studio 2010项目。我已将VS解决方案配置为包含相对于我的解决方案目录的boost库(使用$(SolutionDir))。

显然,Boost包含许多我不需要的标题,它们显然增加了我想要分发的存档大小。

以下是我在代码中包含的标题。有没有办法确定我需要的$ BOOST_ROOT / boost目录中的哪些.hpp文件?

#include <boost/lexical_cast.hpp>
#include <boost/algorithm/string.hpp>
#include <boost/filesystem.hpp>
#include <boost/filesystem/operations.hpp>
#include <boost/filesystem/path.hpp>
#include <boost/thread/condition_variable.hpp>
#include <boost/thread/mutex.hpp>

我编译了Boost,访问文件系统库,$ BOOST_ROOT / stage / lib目录包含许多在构建Boost时编译的文件。我需要所有这些.lib文件吗?删除它们是否安全?或者他们相互依赖?

理想情况下,我只保留我包含的头文件和icl所需的.lib文件,但我不确定如何实现这一点。

编辑:这是针对学校作业的。代码将在用于编写赋值的同一台机器上运行和分级。他们不会编译Boost / install Boost,所以我要包含相关的库。

感谢任何帮助,如果您对问题发表评论,我会尽力更新此问题。

谢谢!

1 个答案:

答案 0 :(得分:2)

只需使用bcp复制您实际使用的Boost部分。

但是,如果您尝试与源一起分发项目,通常希望用户能够自己编译Boost。所以你可能不应该在你的应用程序中分发Boost。

如果您使用的是仅限标题的库,则不会出现问题。但是,由于您正在使用Boost的编译部分,因此用户应该能够自己编译这些部分。以防他们安装了Boost,就像许多人一样。