<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Aug 17, 2019 at 3:03 PM sameeran joshi via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Hi,<br>
during building LLVM with clang enabled for x86-64 architecture<br>
following the steps here:<br>
<a href="http://clang.llvm.org/get_started.html" rel="noreferrer" target="_blank">http://clang.llvm.org/get_started.html</a><br>
<br>
I tried make -j32<br>
the execution goes well till 92% but, the process exits giving following error:<br>
<br>
<br>
<br>
[ 92%] Building CXX object<br>
tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/RegisterValue.cpp.o<br>
*** buffer overflow detected ***: /usr/bin/ld terminated<br>
<br>
cc1plus: out of memory allocating 39806 bytes after a total of 651264 bytes<br>
virtual memory exhausted: Cannot allocate memory<br></blockquote><div><br></div><div> The error message tells that you ran out-of-memory. </div><div>Running with -j32 supposed a fairly large machine, do you have so many CPU cores? How much memory do you have?</div><div><br></div><div>The message also mentions /usr/bin/ld above, the GNU BFD linker which is the default on many distribution can be fairly memory heavy, especially when building with debug info.</div><div>Some tweak to your build can involve:</div><div><br></div><div>- Use LLVM lld linker instead (or the gold linker) (-DLLVM_ENABLE_LLD=Y)</div><div>- Build without debug info (-DCMAKE_BUILD_TYPE=Release)</div><div>- Limit the number of parallel linking process (-DLLVM_PARALLEL_LINK_JOBS=X)</div><div><br></div><div>-- </div><div>Mehdi</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
/usr/bin/cmake: error while loading shared libraries:<br>
libasn1.so.8/usr/bin/cmake: : failed to map segment from shared<br>
objecterror while loading shared libraries: libasn1.so.8<br>
: failed to map segment from shared object<br>
<br>
cc1plus: out of memory allocating 2048 bytes after a total of 843776 bytes<br>
<br>
cc1plus: out of memory allocating 2048 bytes after a total of 815104 bytes<br>
<br>
cc1plus: out of memory allocating 8032 bytes after a total of 806912 bytes<br>
<br>
cc1plus: out of memory allocating 8032 bytes after a total of 790528 bytes<br>
<br>
cc1plus: out of memory allocating 17638 bytes after a total of 815104 bytes<br>
tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/build.make:398:<br>
recipe for target<br>
'tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/Target.cpp.o'<br>
failed<br>
make[2]: *** [tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/Target.cpp.o]<br>
Error 127<br>
virtual memory exhausted: Cannot allocate memory<br>
make[2]: *** Waiting for unfinished jobs....<br>
tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/build.make:422:<br>
recipe for target<br>
'tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/Uops.cpp.o'<br>
failed<br>
make[2]: *** [tools/llvm-exegesis/lib/CMakeFiles/LLVMExegesis.dir/Uops.cpp.o]<br>
Error 127<br>
make[2]: fork: Cannot allocate memory<br>
<br>
cc1plus: out of memory allocating 92461 bytes after a total of 815104 bytes<br>
virtual memory exhausted: Cannot allocate memory<br>
virtual memory exhausted: Cannot allocate memory<br>
/usr/bin/ld: can not read symbols: Memory exhausted<br>
<br>
<br>
When executed<br>
make<br>
only single processor<br>
with no parallel build it's builds successfully.<br>
<br>
Is this an issue with the parallel building of LLVM , I encoutered the<br>
issue 2 times that too beyond 90%?<br>
<br>
Thanks,<br>
Sameeran Joshi<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div></div></div></div>