Files
thejerf--baijiSteamVR/Containerfile.cross

50 lines
1.6 KiB
Docker

FROM docker.io/library/ubuntu:26.04
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
cmake \
ninja-build \
meson \
git \
ccache \
pkgconf \
python3 \
gettext \
file \
curl \
ca-certificates \
qemu-user \
gcc-aarch64-linux-gnu \
g++-aarch64-linux-gnu \
binutils-aarch64-linux-gnu \
&& rm -rf /var/lib/apt/lists/*
# Wrapper for CMake try_run and AArch64 SDK tools imported from Qt CMake packages.
RUN printf '%s\n' \
'#!/bin/sh' \
'if [ "$0" = "/usr/local/bin/qemu-aarch64-wrapper" ]; then' \
' exec /usr/bin/qemu-aarch64 "$@"' \
'fi' \
'case "$0" in' \
' /usr/bin/*) target="/sysroot/usr/bin/${0##*/}" ;;' \
' /usr/lib/libexec/*) target="/sysroot/usr/lib/libexec/${0##*/}" ;;' \
' /usr/lib/aarch64-linux-gnu/libexec/kf6/*) target="/sysroot/usr/lib/aarch64-linux-gnu/libexec/kf6/${0##*/}" ;;' \
' *) exec /usr/bin/qemu-aarch64 "$@" ;;' \
'esac' \
'exec /usr/bin/qemu-aarch64 "$target" "$@"' \
> /usr/local/bin/qemu-aarch64-wrapper && chmod +x /usr/local/bin/qemu-aarch64-wrapper
# The KDE SDK's glibc linker scripts use absolute AArch64 library paths.
RUN ln -sfn /sysroot/usr/lib/aarch64-linux-gnu/libm.so.6 \
/usr/lib/aarch64-linux-gnu/libm.so.6 && \
ln -sfn /sysroot/usr/lib/aarch64-linux-gnu/libmvec.so.1 \
/usr/lib/aarch64-linux-gnu/libmvec.so.1
# Qt package exports also check their installed plugin paths during configuration.
RUN ln -sfn /sysroot/usr/lib/plugins /usr/lib/plugins
ENV QEMU_LD_PREFIX=/sysroot
ENV CCACHE_DIR=/run/ccache
WORKDIR /work