mirror of
https://github.com/alicevision/Meshroom.git
synced 2025-04-28 17:57:16 +02:00
66 lines
1.9 KiB
Text
66 lines
1.9 KiB
Text
ARG AV_VERSION
|
|
ARG CUDA_VERSION
|
|
ARG UBUNTU_VERSION
|
|
FROM alicevision/alicevision:${AV_VERSION}-ubuntu${UBUNTU_VERSION}-cuda${CUDA_VERSION}
|
|
LABEL maintainer="AliceVision Team alicevision-team@googlegroups.com"
|
|
|
|
# Execute with nvidia docker (https://github.com/nvidia/nvidia-docker/wiki/Installation-(version-2.0))
|
|
# docker run -it --runtime=nvidia meshroom
|
|
|
|
ENV MESHROOM_DEV=/opt/Meshroom \
|
|
MESHROOM_BUILD=/tmp/Meshroom_build \
|
|
QT_DIR=/opt/Qt/5.15.2/gcc_64 \
|
|
QT_CI_LOGIN=alicevisionjunk@gmail.com \
|
|
QT_CI_P=azerty1.
|
|
|
|
# Workaround for QtAliceVision builds: fuse lib/lib64 folders
|
|
#RUN ln -s ${AV_INSTALL}/lib ${AV_INSTALL}/lib64
|
|
|
|
# Install libs needed by Qt
|
|
RUN apt-get update && \
|
|
DEBIAN_FRONTEND=noninteractive apt-get install -yq --no-install-recommends \
|
|
flex \
|
|
fontconfig \
|
|
libfreetype6 \
|
|
libglib2.0-0 \
|
|
libice6 \
|
|
libx11-6 \
|
|
libxcb1 \
|
|
libxext6 \
|
|
libxi6 \
|
|
libxrender1 \
|
|
libsm6 \
|
|
libxt-dev \
|
|
libglu-dev \
|
|
libosmesa-dev \
|
|
libgl-dev \
|
|
libglu-dev \
|
|
libqt5charts5-dev \
|
|
libxcb-keysyms1 \
|
|
libxcb-image0 \
|
|
libxkbcommon-x11-0 \
|
|
libz-dev \
|
|
systemd \
|
|
ssh
|
|
|
|
RUN apt-get install -y --no-install-recommends \
|
|
software-properties-common
|
|
|
|
# Install Python3
|
|
RUN apt install python3-pip -y && pip3 install --upgrade pip
|
|
|
|
# Install Qt (to build plugins)
|
|
WORKDIR /tmp/qt
|
|
COPY dl/qt.run /tmp/qt
|
|
RUN chmod +x qt.run
|
|
RUN ./qt.run --verbose --email ${QT_CI_LOGIN} --password ${QT_CI_P} --accept-obligations --accept-licenses \
|
|
--default-answer --platform minimal --no-force-installations --no-default-installations --confirm-command \
|
|
install qt.qt5.5152.gcc_64 qt.qt5.5152.qtcharts qt.qt5.5152.qtcharts.gcc_64
|
|
RUN rm qt.run
|
|
|
|
COPY ./*requirements.txt ./setup.py ${MESHROOM_DEV}/
|
|
|
|
# Install Meshroom requirements and freeze bundle
|
|
WORKDIR "${MESHROOM_DEV}"
|
|
RUN pip install -r dev_requirements.txt -r requirements.txt
|
|
|