mirror of
https://github.com/riscv-software-src/opensbi.git
synced 2025-08-24 15:31:22 +01:00
README: Update toolchain section to mention PIE requirement
Since commit 76d7e9b8ee
("firmware: remove copy-base relocation"), the
Makefile enforces PIE support.
Signed-off-by: Joel Stanley <joel@jms.id.au>
Reviewed-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
13
README.md
13
README.md
@@ -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
|
same binary, so is often an easy way to obtain a working cross-compilation
|
||||||
toolchain.
|
toolchain.
|
||||||
|
|
||||||
Basically, we prefer toolchains with Position Independent Executable (PIE)
|
Toolchains with Position Independent Executable (PIE) support like
|
||||||
support like *riscv64-linux-gnu-gcc*, *riscv64-unknown-freebsd-gcc*, or
|
*riscv64-linux-gnu-gcc*, *riscv64-unknown-freebsd-gcc*, or *Clang/LLVM* are
|
||||||
*Clang/LLVM* as they generate PIE firmware images that can run at arbitrary
|
required in order to generate PIE firmware images that can run at arbitrary
|
||||||
address with appropriate alignment. If a bare-metal GNU toolchain (e.g.
|
address with appropriate alignment. Bare-metal GNU toolchains (e.g.
|
||||||
*riscv64-unknown-elf-gcc*) is used, static linked firmware images are
|
*riscv64-unknown-elf-gcc*) cannot be used. *Clang/LLVM* can still generate PIE
|
||||||
generated instead. *Clang/LLVM* can still generate PIE images if a bare-metal
|
images if a bare-metal triple is used (e.g. *-target riscv64-unknown-elf*).
|
||||||
triple is used (e.g. *-target riscv64-unknown-elf*).
|
|
||||||
|
|
||||||
Please note that only a 64-bit version of the toolchain is available in
|
Please note that only a 64-bit version of the toolchain is available in
|
||||||
the Bootlin toolchain repository for now.
|
the Bootlin toolchain repository for now.
|
||||||
|
Reference in New Issue
Block a user