File tree Expand file tree Collapse file tree 2 files changed +67
-0
lines changed Expand file tree Collapse file tree 2 files changed +67
-0
lines changed Original file line number Diff line number Diff line change @@ -388,6 +388,7 @@ target | std | host | notes
388388[ ` riscv64gc-unknown-nuttx-elf ` ] ( platform-support/nuttx.md ) | ✓ | | RISC-V 64bit with NuttX
389389[ ` riscv64gc-unknown-openbsd ` ] ( platform-support/openbsd.md ) | ✓ | ✓ | OpenBSD/riscv64
390390[ ` riscv64imac-unknown-nuttx-elf ` ] ( platform-support/nuttx.md ) | ✓ | | RISC-V 64bit with NuttX
391+ [ ` riscv64a23-unknown-linux-gnu ` ] ( platform-support/riscv64a23-unknown-linux-gnu.md ) | ✓ | ✓ | RISC-V Linux (kernel 4.20+, glibc 2.29)
391392[ ` s390x-unknown-linux-musl ` ] ( platform-support/s390x-unknown-linux-musl.md ) | ✓ | | S390x Linux (kernel 3.2, musl 1.2.3)
392393` sparc-unknown-linux-gnu ` | ✓ | | 32-bit SPARC Linux
393394[ ` sparc-unknown-none-elf ` ] ( ./platform-support/sparc-unknown-none-elf.md ) | * | | Bare 32-bit SPARC V7+
Original file line number Diff line number Diff line change 1+ # ` riscv64a23-unknown-linux-gnu `
2+
3+ ** Tier: 3**
4+
5+ RISC-V targets using the ratified [ RVA23 Profile] ( https://github.com/riscv/riscv-profiles/blob/main/rva23-profile.adoc ) .
6+ This target will enable all mandary features of rva23u64 and rva23s64 by default.
7+
8+
9+ ## Target maintainers
10+
11+ [ @ZhongyaoChen ] ( https://github.com/ZhongyaoChen )
12+ [ @CaiWeiran ] ( https://github.com/CaiWeiran )
13+
14+ ## Requirements
15+
16+ This target requires:
17+
18+ * Linux Kernel version 4.20 or later
19+ * glibc 2.17 or later
20+
21+
22+ ## Building the target
23+
24+ The target is distributed through ` rustup ` , and otherwise require no
25+ special configuration.
26+
27+ If you need to build your own Rust for some reason though, the target can be build with:
28+
29+ ``` bash
30+ ./x build --target riscv64a23-unknown-linux-gnu
31+ ```
32+
33+ ## Building Rust programs
34+
35+ Add the target:
36+
37+ ``` bash
38+ rustup target add riscv64a23-unknown-linux-gnu
39+ ```
40+
41+ Then cross compile crates with:
42+
43+ ``` bash
44+ cargo build --target riscv64a23-unknown-linux-gnu
45+ ```
46+
47+ ## Cross-compilation toolchains and Testing
48+
49+ On Ubuntu 24.04, we can install compilation dependencies with:
50+
51+ ``` bash
52+ apt install -y git python3 g++ g++-riscv64-linux-gnu
53+ ```
54+
55+ Then build target with:
56+
57+ ``` bash
58+ ./x build --target=riscv64a23-unknown-linux-gnu
59+ ```
60+
61+ There are no special requirements for testing and running the targets.
62+ For testing cross-builds on the host, you can use the docker image. It will automatically set up a RISC-V QEMU emulator and run all the test suite.
63+
64+ ``` bash
65+ DEPLOY=1 ./src/ci/docker/run.sh riscv64a23-gnu
66+ ```
You can’t perform that action at this time.
0 commit comments