diff options
| author | Joel Stanley <[email protected]> | 2025-02-05 14:14:51 +1030 |
|---|---|---|
| committer | Anup Patel <[email protected]> | 2025-02-18 14:10:11 +0530 |
| commit | f3dfa6488fcd39ce96d14294a2bacf7b7a152288 (patch) | |
| tree | 2cfa011a46defb310230a28d13c50dfc201b756e | |
| parent | 02c7a9bbefce4e54eda416f2d7320ff7ab451ee1 (diff) | |
README: Update toolchain section to mention PIE requirement
Since commit 76d7e9b8ee72 ("firmware: remove copy-base relocation"), the
Makefile enforces PIE support.
Signed-off-by: Joel Stanley <[email protected]>
Reviewed-by: Anup Patel <[email protected]>
| -rw-r--r-- | README.md | 13 |
1 files changed, 6 insertions, 7 deletions
@@ -108,13 +108,12 @@ LLVM/Clang toolchain due to LLVM's ability to support multiple backends in the same binary, so is often an easy way to obtain a working cross-compilation toolchain. -Basically, we prefer toolchains with Position Independent Executable (PIE) -support like *riscv64-linux-gnu-gcc*, *riscv64-unknown-freebsd-gcc*, or -*Clang/LLVM* as they generate PIE firmware images that can run at arbitrary -address with appropriate alignment. If a bare-metal GNU toolchain (e.g. -*riscv64-unknown-elf-gcc*) is used, static linked firmware images are -generated instead. *Clang/LLVM* can still generate PIE images if a bare-metal -triple is used (e.g. *-target riscv64-unknown-elf*). +Toolchains with Position Independent Executable (PIE) support like +*riscv64-linux-gnu-gcc*, *riscv64-unknown-freebsd-gcc*, or *Clang/LLVM* are +required in order to generate PIE firmware images that can run at arbitrary +address with appropriate alignment. Bare-metal GNU toolchains (e.g. +*riscv64-unknown-elf-gcc*) cannot be used. *Clang/LLVM* can still generate PIE +images if a bare-metal triple is used (e.g. *-target riscv64-unknown-elf*). Please note that only a 64-bit version of the toolchain is available in the Bootlin toolchain repository for now. |
