我构建了一次项目,因此它生成了一堆.o和.a文件。现在,我正在尝试清理它。
此页面:http://www.boost.org/build/doc/html/bbv2/overview/invocation.html告诉我b2 --clean-all
或b2 clean
应该有效。
然而,我试过了:
b2 clean
b2 --clean
b2 --clean-all
他们似乎都没有做任何事情。如何清洁增强工作区?
答案 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