From d59c8adb4f413c59d028c239d7729084b204b1d8 Mon Sep 17 00:00:00 2001 From: DavidKorczynski Date: Mon, 13 Sep 2021 05:09:30 +0100 Subject: [PATCH] doc: explicitly mention dynamic and static linking of fuzzers (#6428) * doc: explicitly mention static and dynamic linking of fuzzers. * doc: add comma. --- docs/getting-started/new_project_guide.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/getting-started/new_project_guide.md b/docs/getting-started/new_project_guide.md index f23d0218f..7ac0d2ae0 100644 --- a/docs/getting-started/new_project_guide.md +++ b/docs/getting-started/new_project_guide.md @@ -325,6 +325,14 @@ pass them manually to the build tool. See the [Provided Environment Variables](https://github.com/google/oss-fuzz/blob/master/infra/base-images/base-builder/README.md#provided-environment-variables) section in `base-builder` image documentation for more details. +### Static and dynamic linking of libraries +The `build.sh` should produce fuzzers that are statically linked. This is because the +fuzzer build environment is different to the fuzzer runtime environment and if your +project depends on third party libraries then it is likely they will not be present +in the execution environment. Thus, any shared libraries you may install or compile in +`build.sh` or `Dockerfile` will not be present in the fuzzer runtime environment. There +are exceptions to this rule, and for further information on this please see the [fuzzer environment]({{ site.baseurl }}/further-reading/fuzzer-environment/) page. + ## Disk space restrictions Our builders have a disk size of 250GB (this includes space taken up by the OS). Builds must keep peak disk usage below this.