New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add precached LTO variants of libraries #67
Comments
I think so! Good idea! |
Hi, I see that there is an attempt in your case to create a new cache entry under
Is it possible for you to share compilation flags? |
I've addressed blindly this issue in the commit ec1eaff, I will update images soon with that change. |
Hmm, I'll need some time to get around but could you try adding optimisation and/or debug flags? |
I've tested a various of flags under 1.39.5 - nothing has worked unfortunately.
|
Ah, it probably depends on contents of your test.cpp and which libraries end up being linked. If it's not using the standard library, it might be skipping these compilations altogether.
Unlikely - that issue is just about size inefficiency, which is not very related. |
So I've added a bunch of most common libs to cache with lto, please check if something missing I can add explicitly to the list : ) Thanks! |
I've noticed that, when building with LTO (most of my projects), the standard libraries are rebuilt on each invocation of
docker run
. This is noticeable from logs e.g.:At the same time,
/emsdk_portable/.data/cache/wasm
are available within the container.It appears that the reason is that images are shipped with standard C / C++ libraries precompiled and cached as part of the image, but only without LTO flag (LTO uses LLVM IR bitcode as object files, so has to be compiled separately).
Would it be possible to add LTO variants too?
The text was updated successfully, but these errors were encountered: