Closed jwarner112 closed 4 years ago
I suspect you ran out of memory and the compilation process was being killed as a result. I would suggest adding a flag to the ninja
command used to build Clang to explicitly limit how many parallel compilations can be performed. The rule of thumb is ~1 GB / parallel compile job. At 4 GB of memory plus overhead, you may only be able to compile with 2 or 3 processes in parallel without running out of memory.
I tried doing this and after (many) hours it hit a different error which I've since lost record of. That was on my laptop, so instead of trying that again I put an Ubuntu (Server) 20.04 VM on a Windows host (gave it 16gb RAM and 12 cores) and it failed to compile cpython-3.8
and cpython-3.7
. I'm not sure whether or not these should qualify as their own issues or not. Here are some gists with the complete logs from invocation to failure.
Thoughts? I'll create new issues for these if necessary.
Yeah, it is worth a new issue. The underlying failure appears to be InstrProfilingFile.c:(.text.parseAndSetFilename+0xfe): undefined reference to
__strdup'`. I'm guessing musl just doesn't support LTO and/or PGO. (Or Python's configure script isn't handling something properly.) musl libc doesn't appear to be well supported by Python. So this warrants a closer look.
Created #46 and since I finally got a target compiled, I'll close this one.
Hey there! First, thanks for this project. It will be quite a helpful building block for me on a few projects of mine.
For now however, I'm unable to
musl
build for Linux x64.Environment
I'm building using Purism's Librem15 (product page, product review), which sports an
Intel i7-6500U @ 2.5Ghz x4
and7.7GiB
of RAM.Problem
I've invoked the build from the
HEAD
ofmaster
using:I was able to see the build pull/build docker images and build most of the tools in the toolchain. But when it was working on
clang
, it choked with an error while trying to compileSemaDeclAttr.cpp.o
:Workarounds I've tried
This StackOverflow thread suggested that the problem was memory limitations. As such, I tried:
--optimizations
flag, which produced the same failure.pythonbuild/buildenv.py
to addmem_limit="4g"
(as documented here) to the container instantiation, which led to the same failure yet again.Here are the logs produced by the latest build -- with the
mem_limit="4g"
modification, but many of the images have not changed since their first successful runs (and the logs for them may not have been updated, either? I'm not certain)build.binutils-linux64.log
build.clang-linux64.log
build.gcc-linux64.log
, split into five smaller files, ~25K lines eachbuild.gcc-linux64.1.log
build.gcc-linux64.2.log
build.gcc-linux64.3.log
build.gcc-linux64.4.log
build.gcc-linux64.5.log
build.image-image-build.log
build.image-image-clang.log
build.image-image-gcc.log