mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 04:57:45 +00:00
Lagom/Fuzzers: Recommend enabling UBSan, extend instructions
This commit is contained in:
parent
1cbc01e288
commit
648f153951
1 changed files with 13 additions and 1 deletions
|
@ -18,7 +18,7 @@ Lagom can be used to fuzz parts of SerenityOS's code base. This requires buildli
|
||||||
|
|
||||||
# From the root of the SerenityOS checkout:
|
# From the root of the SerenityOS checkout:
|
||||||
mkdir BuildLagom && cd BuildLagom
|
mkdir BuildLagom && cd BuildLagom
|
||||||
cmake -GNinja -DBUILD_LAGOM=ON -DENABLE_FUZZER_SANITIZER=ON -DENABLE_ADDRESS_SANITIZER=ON -DCMAKE_CXX_COMPILER=clang++ ..
|
cmake -GNinja -DBUILD_LAGOM=ON -DENABLE_FUZZER_SANITIZER=ON -DENABLE_ADDRESS_SANITIZER=ON -DENABLE_UNDEFINED_SANITIZER=ON -DCMAKE_CXX_COMPILER=clang++ ..
|
||||||
ninja Meta/Lagom/all
|
ninja Meta/Lagom/all
|
||||||
# Or as a handy rebuild-rerun line:
|
# Or as a handy rebuild-rerun line:
|
||||||
ninja FuzzJs && Meta/Lagom/Fuzzers/FuzzJs
|
ninja FuzzJs && Meta/Lagom/Fuzzers/FuzzJs
|
||||||
|
@ -110,3 +110,15 @@ __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
|
||||||
50 ../sysdeps/unix/sysv/linux/raise.c: File or directory not found.
|
50 ../sysdeps/unix/sysv/linux/raise.c: File or directory not found.
|
||||||
(gdb)
|
(gdb)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
UBSan doesn't always give useful information. use something like `export UBSAN_OPTIONS=print_stacktrace=1` to always print stacktraces.
|
||||||
|
|
||||||
|
You may run into annoying issues with the stacktrace:
|
||||||
|
|
||||||
|
```
|
||||||
|
==123456==WARNING: invalid path to external symbolizer!
|
||||||
|
==123456==WARNING: Failed to use and restart external symbolizer!
|
||||||
|
```
|
||||||
|
|
||||||
|
That means it couldn't find the executable `llvm-symbolizer`, which could be in your OS's package `llvm`.
|
||||||
|
`llvm-symbolizer-11` will [not be recognized](https://stackoverflow.com/a/42845444/).
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue