提升1.59.0如何清理项目?

时间:2015-08-19 10:00:29

标签: c++ boost

我构建了一次项目,因此它生成了一堆.o和.a文件。现在,我正在尝试清理它。

此页面:http://www.boost.org/build/doc/html/bbv2/overview/invocation.html告诉我b2 --clean-allb2 clean应该有效。

然而,我试过了:

  b2 clean
  b2 --clean
  b2 --clean-all

他们似乎都没有做任何事情。如何清洁增强工作区?

2 个答案:

答案 0 :(得分:8)

如果将-n与--clean-all一起使用,则报告它将运行的命令,如:

b2 --clean-all -n

然后我确实看到像往常一样清洁的东西。与--clean相同。也许,你甚至用--clean打印配置这个事实让你感到困惑?这是预期的,因为构建和清理的东西取决于配置测试。

答案 1 :(得分:5)

我通常使用--build-dir=/tmp/build-boost构建。在我的系统上/ tmp /挂载为tmpfs(这样当我重新启动时,临时文件仍然消失了。)

出于这个原因,我打赌,您只需查看--build-dir的默认值并删除该文件夹:

  --build-dir=DIR         Build in this location instead of building within
                          the distribution tree. Recommended!

无论如何,一致(重新)构建不需要清洁。

简单的试运行表明临时工具是在./bin.v2/libs/中创建的(至少在我的方框中)。你可以自己看看,例如

ommon.mkdir bin.v2/libs/filesystem
common.mkdir bin.v2/libs/filesystem/build
common.mkdir bin.v2/libs/filesystem/build/gcc-4.9.2
common.mkdir bin.v2/libs/filesystem/build/gcc-4.9.2/release
common.mkdir bin.v2/libs/filesystem/build/gcc-4.9.2/release/threading-multi
gcc.compile.c++ bin.v2/libs/filesystem/build/gcc-4.9.2/release/threading-multi/codecvt_error_category.o

备注

  • --clean-all 为我删除了这些目标文件
  • 使用--build-dir=/somewhere/else确实没有在树中创建这些目标文件(但显然仍会创建stage/lib/):

    common.mkdir /somewhere/else/boost/bin.v2/libs/filesystem
    common.mkdir /somewhere/else/boost/bin.v2/libs/filesystem/build
    common.mkdir /somewhere/else/boost/bin.v2/libs/filesystem/build/gcc-4.9.2
    common.mkdir /somewhere/else/boost/bin.v2/libs/filesystem/build/gcc-4.9.2/release
    common.mkdir /somewhere/else/boost/bin.v2/libs/filesystem/build/gcc-4.9.2/release/threading-multi
    gcc.compile.c++ /somewhere/else/boost/bin.v2/libs/filesystem/build/gcc-4.9.2/release/threading-multi/codecvt_error_category.o