-
Notifications
You must be signed in to change notification settings - Fork 30.4k
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
build fails with --enable-asan --ninja on Ubuntu 18.04 #32257
Comments
Maybe this is related to https://github.com/nodejs/node/pull/32244/checks?check_run_id=506791476 |
gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0 |
@gabrielschulhof did you get this error on GitHub Actions on your machine? |
Same error here, and I'm not using GIthub actions. |
@FullyArticulate @gabrielschulhof can you share more on the error output? This could be the same as our GitHub Actions issue (not enough memory to link) or could be something else. On my machine it's building fine (Ubuntu 19.10, gcc (Ubuntu 9.2.1-9ubuntu2) 9.2.1 20191008). Note: test runs will fail, our codebase is not ASAN compliant yet. But cctest builds just fine here. |
Same error in https://github.com/nodejs/node/pull/32352/checks#step:4:3938 that was run for #32352. |
That's an out of memory error (the important line is I don't think there's anything we can do to fix this on developers machines. ASAN (just as Debug) builds are heavy, and linking requires a lot of memory. I've solved it on other projects by using less parallelism (a lower |
I have run ASAN checks on a 16GB machine, works fine. I think it's a issue related to gcc or other toolchain. @gabrielschulhof Can you try run asan in docker image |
This reverts commit 3ec4b21. See: nodejs#32257
@gengjiawen I tried with the image limiting the memory available for the container ( Also, users trying to build ASAN on Docker on OS X will probably have a hard time, since Docker on OS X runs on top of a Linux VM with 2Gb Ram by default (unless they changed the default recently). Not sure if that's the case here, but I thought it was worth mentioning. |
on Github Action the memory error is FAILED: mkcodecache
c++ -fsanitize=address -pthread -rdynamic -m64 -Wl,--whole-archive obj/deps/zlib/libzlib.a -Wl,--no-whole-archive -Wl,--whole-archive obj/deps/uv/libuv.a -Wl,--no-whole-archive -Wl,-z,noexecstack -Wl,--whole-archive obj/tools/v8_gypfiles/libv8_snapshot.a -Wl,--no-whole-archive -Wl,-z,relro -Wl,-z,now -Wl,--whole-archive,obj/deps/openssl/libopenssl.a -Wl,--no-whole-archive -pthread -o mkcodecache -Wl,--start-group obj/src/mkcodecache.node_snapshot_stub.o obj/src/mkcodecache.node_code_cache_stub.o obj/tools/code_cache/mkcodecache.mkcodecache.o obj/tools/code_cache/mkcodecache.cache_builder.o obj/libnode.a obj/deps/histogram/libhistogram.a obj/deps/uvwasi/libuvwasi.a obj/tools/v8_gypfiles/libv8_snapshot.a obj/tools/v8_gypfiles/libv8_libplatform.a obj/tools/icu/libicui18n.a obj/deps/zlib/libzlib.a obj/deps/llhttp/libllhttp.a obj/deps/cares/libcares.a obj/deps/uv/libuv.a obj/deps/nghttp2/libnghttp2.a obj/deps/brotli/libbrotli.a obj/deps/openssl/libopenssl.a obj/tools/icu/libicuucx.a obj/tools/icu/libicudata.a obj/tools/v8_gypfiles/libv8_base_without_compiler.a obj/tools/v8_gypfiles/libv8_libbase.a obj/tools/v8_gypfiles/libv8_libsampler.a obj/tools/v8_gypfiles/libv8_zlib.a obj/tools/v8_gypfiles/libv8_compiler.a obj/tools/v8_gypfiles/libv8_initializers.a -lm -ldl -Wl,--end-group
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
##[error]Process completed with exit code 1. Not like the error @gabrielschulhof posted. Maybe not the same problem ? |
In this case, it looks like the memory issue. I don't is there a way to improve this. But for now, a big memory machine is needed for ASAN build. |
This reverts commit 3ec4b21. See: #32257 PR-URL: #32324 Reviewed-By: Matheus Marchini <[email protected]> Reviewed-By: Jiawen Geng <[email protected]> Reviewed-By: Rich Trott <[email protected]> Reviewed-By: Michael Dawson <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: Michaël Zasso <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Beth Griggs <[email protected]> Reviewed-By: Gabriel Schulhof <[email protected]>
This reverts commit 3ec4b21. See: #32257 PR-URL: #32324 Reviewed-By: Matheus Marchini <[email protected]> Reviewed-By: Jiawen Geng <[email protected]> Reviewed-By: Rich Trott <[email protected]> Reviewed-By: Michael Dawson <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: Michaël Zasso <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Beth Griggs <[email protected]> Reviewed-By: Gabriel Schulhof <[email protected]>
This reverts commit 3ec4b21. See: #32257 PR-URL: #32324 Reviewed-By: Matheus Marchini <[email protected]> Reviewed-By: Jiawen Geng <[email protected]> Reviewed-By: Rich Trott <[email protected]> Reviewed-By: Michael Dawson <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: Michaël Zasso <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Beth Griggs <[email protected]> Reviewed-By: Gabriel Schulhof <[email protected]>
This is fixed by @mmalecki patch for gyp. |
Linking cctest fails with errors of the form below referring to many symbols:
The text was updated successfully, but these errors were encountered: