@@ -15,9 +15,9 @@ fuzzing environment or updating their harnesses.
15
15
16
16
## Usage
17
17
18
- ` libafl_libfuzzer ` currently has known support for Rust, C, and C++ targets on Linux and macOS.
19
- Windows is not currently supported, as we do not currently test or develop for Windows machines, but [ we will happily
20
- hear what issues you face and patch them as possible ] ( https://github.com/AFLplusplus/LibAFL/issues/1563 ) .
18
+ ` libafl_libfuzzer ` currently has known support for Rust, C, and C++ targets on Linux and
19
+ macOS. Windows is only supported via [ usage as a standalone
20
+ library ] ( #usage-as-a-standalone-library-for-ccetc ) .
21
21
22
22
For both cases, you should install a recent ** nightly** version of Rust via ` rustup ` and add the ` llvm-tools ` component
23
23
with ` rustup component add llvm-tools ` .
@@ -80,6 +80,7 @@ CXXFLAGS='-fsanitize=fuzzer-no-link'
80
80
81
81
### Usage as a standalone library (for C/C++/etc.)
82
82
83
+
83
84
The runtime for ` libafl_libfuzzer ` may be used standalone as a direct replacement for libFuzzer with other targets as
84
85
well.
85
86
To do so, [ ensure a recent nightly version of Rust is installed] ( https://rustup.rs/ ) , then enter the
@@ -122,6 +123,14 @@ This standalone library is _not_ compatible with Rust targets; you must instead
122
123
This is due to potential symbol conflict between your harness and the fuzzer runtime, which is resolved by additional
123
124
build steps provided in the ` libafl_libfuzzer ` crate itself.
124
125
126
+ #### Troubleshooting
127
+
128
+ To build the ` libafl_libfuzzer ` runtime directly, you must have working symbolic links
129
+ in your LibAFL git repository. You can enable this with ` git config core.symlinks true ` .
130
+ If you see problems related to the ` Cargo.toml ` file containing only a path, this is
131
+ your problem. Enable symlinks and checkout or re-clone the LibAFL repository.
132
+
133
+
125
134
## Flags
126
135
127
136
You can pass additional flags to the libFuzzer runtime in ` cargo-fuzz ` like so:
0 commit comments