Initial commit

This commit is contained in:
2024-08-09 13:12:36 +02:00
parent 2015940771
commit fc462127a1
+69
View File
@@ -0,0 +1,69 @@
FROM ubuntu:23.10
ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /root
# Install prerequisites
RUN apt update -qq && apt install -y --no-install-recommends \
autoconf \
automake \
autotools-dev \
curl \
python3 \
python3-pip \
libmpc-dev \
libmpfr-dev \
libgmp-dev \
gawk \
build-essential \
bison \
flex \
texinfo \
gperf \
libtool \
patchutils \
bc \
zlib1g-dev \
libexpat-dev \
ninja-build \
git \
cmake \
libglib2.0-dev \
libslirp-dev \
&& rm -rf /var/lib/apt/lists/*
# Compile and install toolchain
RUN git clone https://github.com/riscv/riscv-gnu-toolchain
WORKDIR /root/riscv-gnu-toolchain
RUN ./configure --prefix=/opt/riscv && \
make -j8
WORKDIR /root
RUN rm -rf /root/riscv-gnu-toolchain
# Install additional prerequisites
RUN apt update -qq && apt install -y --no-install-recommends \
device-tree-compiler \
&& rm -rf /var/lib/apt/lists/*
# Compile and install Spike
RUN git clone https://github.com/riscv/riscv-isa-sim.git
WORKDIR /root/riscv-isa-sim
RUN mkdir build && \
cd build && \
../configure --prefix=/opt/riscv && \
make -j8 && \
make install
WORKDIR /root
RUN rm -rf /root/riscv-isa-sim
# Pass commands into container
ENTRYPOINT ["bash", "-lc"]