File tree Expand file tree Collapse file tree 1 file changed +17
-0
lines changed Expand file tree Collapse file tree 1 file changed +17
-0
lines changed Original file line number Diff line number Diff line change @@ -28,6 +28,7 @@ file a new issue.
2828 * [ Running Coverage] ( #running-coverage )
2929 * [ Building the documentation] ( #building-the-documentation )
3030 * [ Building a debug build] ( #building-a-debug-build )
31+ * [ Building an ASAN build] ( #building-an-asan-build )
3132 * [ Troubleshooting Unix and macOS builds] ( #troubleshooting-unix-and-macos-builds )
3233 * [ Windows] ( #windows )
3334 * [ Prerequisites] ( #prerequisites )
@@ -490,6 +491,22 @@ $ gdb /opt/node-debug/node core.node.8.1535359906
490491$ backtrace
491492```
492493
494+ #### Building an ASAN build
495+
496+ [ ASAN] ( https://github.com/google/sanitizers ) can help detect various memory
497+ related bugs. ASAN builds are currently only supported on linux.
498+ If you want to check it on Windows or macOS or you want a consistent toolchain
499+ on Linux, you can try [ Docker] ( https://www.docker.com/products/docker-desktop )
500+ (using an image like ` gengjiawen/node-build:2020-02-14 ` ).
501+
502+ The ` --debug ` is not necessary and will slow down build and testing, but it can
503+ show clear stacktrace if ASAN hits an issue.
504+
505+ ``` console
506+ $ ./configure --debug --enable-asan && make -j4
507+ $ make test-only
508+ ```
509+
493510#### Troubleshooting Unix and macOS builds
494511
495512Stale builds can sometimes result in ` file not found ` errors while building.
You can’t perform that action at this time.
0 commit comments