LLVM 6.0.0 的构建大小很大 (42G)

Build size for LLVM 6.0.0 is huge (42G)

我从源代码构建了 llvm-6.0.0,一切正常。我只是想知道它的大小怎么会这么大 (42G)。我可以轻松删除一些目标文件或其他文件以缩小构建目录吗?

$ du -hs ~/GIT/llvm-6.0.0/build/
42G /home/oren/GIT/llvm-6.0.0/build/

您在没有共享库的情况下进行构建,这意味着许多非常大的库被静态链接到大量(否则很小)的工具中。我猜你可能也在为所有目标构建(32 位 ARM、64 位 ARM,还有几十个,32 位 X86、64 位 X86)。

如果你运行cmake -DLLVM_TARGETS_TO_BUILD=HOST -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_SHARED_LIBS=on .,你应该减少space使用到10G左右。 (至少我有一个从类似命令行生成的 10G 构建树。我还有更大的树,因为这些设置并不是所有目的的最佳匹配。)