File tree 1 file changed +17
-0
lines changed
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.
28
28
* [ Running Coverage] ( #running-coverage )
29
29
* [ Building the documentation] ( #building-the-documentation )
30
30
* [ Building a debug build] ( #building-a-debug-build )
31
+ * [ Building an ASAN build] ( #building-an-asan-build )
31
32
* [ Troubleshooting Unix and macOS builds] ( #troubleshooting-unix-and-macos-builds )
32
33
* [ Windows] ( #windows )
33
34
* [ Prerequisites] ( #prerequisites )
@@ -490,6 +491,22 @@ $ gdb /opt/node-debug/node core.node.8.1535359906
490
491
$ backtrace
491
492
```
492
493
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
+
493
510
#### Troubleshooting Unix and macOS builds
494
511
495
512
Stale builds can sometimes result in ` file not found ` errors while building.
You can’t perform that action at this time.
0 commit comments