# Cross compilation environment for bliss-mixer FROM debian:bullseye RUN dpkg --add-architecture arm64 && \ dpkg --add-architecture armhf RUN apt-get update RUN apt-get install -y curl git pkg-config yasm RUN apt-get install -y build-essential clang RUN apt-get install -y crossbuild-essential-armhf crossbuild-essential-arm64 RUN apt-get install -y libavutil-dev:arm64 libavcodec-dev:arm64 libavformat-dev:arm64 \ libavfilter-dev:arm64 libavdevice-dev:arm64 libswresample-dev:arm64 libfftw3-dev:arm64 RUN apt-get install -y libavutil-dev:armhf libavcodec-dev:armhf libavformat-dev:armhf \ libavfilter-dev:armhf libavdevice-dev:armhf libswresample-dev:armhf libfftw3-dev:armhf RUN curl https://sh.rustup.rs -sSf | sh -s -- -y ENV PATH="/root/.cargo/bin/:${PATH}" RUN rustup target add aarch64-unknown-linux-gnu && \ rustup target add arm-unknown-linux-gnueabihf RUN mkdir /.cargo && \ echo '[target.aarch64-unknown-linux-gnu]\nlinker = "aarch64-linux-gnu-gcc"' > /.cargo/config && \ echo '[target.arm-unknown-linux-gnueabihf]\nlinker = "arm-linux-gnueabihf-gcc"' >> /.cargo/config RUN mkdir /build ENV CARGO_TARGET_DIR /build ENV CARGO_HOME /build/cache RUN mkdir /src WORKDIR /src CMD ["/src/docker/docker-build.sh"]