diff --git a/misc/README.md b/misc/README.md index db7028fecc36eef059a6a3687743960d2ca28cb2..4c5bcc6104c89a55e9ca3b92dc49e2271500b273 100644 --- a/misc/README.md +++ b/misc/README.md @@ -1,6 +1,6 @@ # Supplementary non-official material -This is a copy of libgcc.a that I know works well with the part. If you have a better one, please share! +This is a copy of libgcc.a that I know works well with the part. Below are the instructions on how to get the source code and how to build it. # Extra totally non-official info @@ -10,3 +10,29 @@ At 3.3v, it seems that for all speed configurations, the short drive current is At 5v the peak current power application is 90-100mA for emitter and collector. +## Building libgcc.a from source. + +1. Install prerequisites (for Debian-based systems; similar steps for other systems): + +``` +sudo apt-get install build-essential autoconf automake autotools-dev curl \ +libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo \ +gperf libtool patchutils bc zlib1g-dev git +``` + +2. Checkout sources: + +``` +git clone --recursive https://github.com/riscv/riscv-gnu-toolchain.git +cd riscv-gnu-toolchain +``` + +3. Configure and build: + +``` +./configure --prefix $(pwd)/build-ch32v003 --with-arch=rv32ec --with-abi=ilp32e +make -j8 +``` + +4. Enjoy the built libgcc.a at ./build-ch32v003/lib/gcc/riscv32-unknown-elf/12.2.0/libgcc.a + diff --git a/misc/libgcc.a b/misc/libgcc.a index 7e3b7303b0bfcec86e4beccab77ede2ca3e753f6..117e412d1e5323edea1dfee86b2108459c743fe7 100644 Binary files a/misc/libgcc.a and b/misc/libgcc.a differ