FROM ubuntu:22.04 ARG PREFIX=/usr/local # Support multiarch RUN dpkg --add-architecture i386 # Add rocm repository RUN sh -c 'echo deb [arch=amd64 trusted=yes] http://repo.radeon.com/rocm/apt/5.6/ focal main > /etc/apt/sources.list.d/rocm.list' # Install dependencies RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-unauthenticated \ apt-utils \ build-essential \ cmake \ curl \ doxygen \ gdb \ git \ lcov \ pkg-config \ python3 \ python3-dev \ python3-pip \ software-properties-common \ wget \ rocm-device-libs \ hip-base \ libnuma-dev \ miopen-hip \ rocblas \ zlib1g-dev && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* # Workaround broken rocm packages RUN ln -s /opt/rocm-* /opt/rocm RUN echo "/opt/rocm/lib" > /etc/ld.so.conf.d/rocm.conf RUN echo "/opt/rocm/llvm/lib" > /etc/ld.so.conf.d/rocm-llvm.conf RUN ldconfig # Workaround broken miopen cmake files RUN sed -i 's,;/usr/lib/x86_64-linux-gnu/librt.so,,g' /opt/rocm/lib/cmake/miopen/miopen-targets.cmake ENV LC_ALL=C.UTF-8 ENV LANG=C.UTF-8 # Install yapf RUN pip3 install yapf==0.28.0 # Install doc requirements ADD docs/.sphinx/requirements.txt /doc-requirements.txt RUN pip3 install -r /doc-requirements.txt # Install dependencies ADD dev-requirements.txt /dev-requirements.txt ADD requirements.txt /requirements.txt ADD rbuild.ini /rbuild.ini # Temporarily install a new cmake until switching to ubuntu 22.04 RUN pip3 install cmake==3.22.1 COPY ./tools/install_prereqs.sh / RUN /install_prereqs.sh /usr/local / && rm /install_prereqs.sh # Install MLIR ADD mlir-requirements.txt /mlir-requirements.txt RUN cget -p /usr/local install -f /mlir-requirements.txt