6ea6863f21
The OpenSBI build has been using docker:19.03.1, which appears to be old
enough that v2 of the manifest is no longer supported. Something has
started serving us those manifests, resulting in errors along the lines
of
$ docker build --cache-from $IMAGE_TAG --tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA --tag $IMAGE_TAG .gitlab-ci.d/opensbi
Step 1/7 : FROM ubuntu:18.04
18.04: Pulling from library/ubuntu
mediaType in manifest should be 'application/vnd.docker.distribution.manifest.v2+json' not 'application/vnd.oci.image.manifest.v1+json'
This moves to docker:stable, as was suggested by the template. It also
adds the python3 package via apt, as OpenSBI requires that to build.
Reviewed-by: Bin Meng <bmeng@tinylab.org>
Message-ID: <20230303202448.11911-2-palmer@rivosinc.com>
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
(cherry picked from commit 7bc1286b81
)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
35 lines
1012 B
Docker
35 lines
1012 B
Docker
#
|
|
# Docker image to cross-compile OpenSBI firmware binaries
|
|
#
|
|
FROM ubuntu:18.04
|
|
|
|
MAINTAINER Bin Meng <bmeng.cn@gmail.com>
|
|
|
|
# Install packages required to build OpenSBI
|
|
RUN apt update \
|
|
&& \
|
|
\
|
|
DEBIAN_FRONTEND=noninteractive \
|
|
apt install --assume-yes --no-install-recommends \
|
|
build-essential \
|
|
ca-certificates \
|
|
git \
|
|
make \
|
|
python3 \
|
|
wget \
|
|
&& \
|
|
\
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
# Manually install the kernel.org "Crosstool" based toolchains for gcc-8.3
|
|
RUN wget -O - \
|
|
https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/8.3.0/x86_64-gcc-8.3.0-nolibc-riscv32-linux.tar.xz \
|
|
| tar -C /opt -xJ
|
|
RUN wget -O - \
|
|
https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/8.3.0/x86_64-gcc-8.3.0-nolibc-riscv64-linux.tar.xz \
|
|
| tar -C /opt -xJ
|
|
|
|
# Export the toolchains to the system path
|
|
ENV PATH="/opt/gcc-8.3.0-nolibc/riscv32-linux/bin:${PATH}"
|
|
ENV PATH="/opt/gcc-8.3.0-nolibc/riscv64-linux/bin:${PATH}"
|