<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Hi,</p>
<p>Have anybody recently built LLVM in Debug mode <i>within</i>
space requirements from the Getting Started doc?<br>
</p>
<p><a class="moz-txt-link-freetext" href="https://llvm.org/docs/GettingStarted.html#hardware">https://llvm.org/docs/GettingStarted.html#hardware</a></p>
<p>> An LLVM-only build
will need about 1-3 GB of space. A full build of LLVM and Clang
will need around
15-20 GB of disk space.</p>
<p>From my experience this numbers looks drastically low. On FreeBSD
my recent builds consumed more than 70 GB and on Linux - more than
60. I am building LLVM, Clang, and LLD with all default targets
and default settings. On FreeBSD I am also building Polly. Also,
building `clang-check` target adds around to 20 GB to the build
directory size.</p>
<p>Apologies for the long snippet, but here is top 20 lines from `du
-h | sort -rh` on my FreeBSD directory (full log is attached):</p>
<p> 91G build<br>
40G build/bin<br>
25G build/tools<br>
25G build/lib<br>
24G build/tools/clang<br>
15G build/tools/clang/unittests<br>
5.0G build/tools/clang/lib<br>
3.9G build/lib/Target<br>
3.1G build/tools/clang/unittests/Tooling<br>
3.1G build/tools/clang/test<br>
2.8G
build/tools/clang/test/Tooling/Output/clang-check-mac-libcxx-fixed-compilation-db.cpp.tmp/mock-libcxx/bin<br>
2.8G
build/tools/clang/test/Tooling/Output/clang-check-mac-libcxx-fixed-compilation-db.cpp.tmp/mock-libcxx<br>
2.8G
build/tools/clang/test/Tooling/Output/clang-check-mac-libcxx-fixed-compilation-db.cpp.tmp<br>
2.8G build/tools/clang/test/Tooling/Output<br>
2.8G build/tools/clang/test/Tooling<br>
1.9G build/tools/clang/unittests/Frontend<br>
1.6G build/tools/clang/unittests/Driver<br>
1.5G build/tools/clang/unittests/ASTMatchers<br>
1.4G build/tools/clang/lib/StaticAnalyzer<br>
1.3G build/lib/CodeGen<br>
<br>
</p>
<p>Note that Clang's `unittest` and `test` directory together occupy
more than 18 GB (which is about the size manual assigns for the
entire build), with most of the space in `test` taken up by output
of tooling tests (is that for MacOS, by the way?). Also, looks
like five of the unittest directories for clang components are
taking more than a gigabyte each (with Tooling using more than 3
GB).<br>
</p>
<p>Is this expected or am I doing something wrong? If it is
expected, should the manual be fixed?</p>
<p>There are no RAM requirements in the doc, from my observation
linker process on Linux or FreeBSD
needs about 10 GB at the moment (and this has been growing for a
while). Should this be also reflected in hardware requirements as
well?</p>
<p>And lastly is there a way to reduce the space consumption by
Clang unittests and Tooling tests aside of disabling those?</p>
<p>Best,</p>
<p>Petr<br>
</p>
</body>
</html>