mirror of
https://github.com/alicevision/Meshroom.git
synced 2025-06-01 10:21:59 +02:00
62 lines
2.1 KiB
Text
62 lines
2.1 KiB
Text
ARG AV_VERSION
|
|
ARG CUDA_VERSION=9.0
|
|
ARG OS_VERSION=7
|
|
FROM alicevision/alicevision:${AV_VERSION}-centos${OS_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/Qt5.14.1/5.14.1/gcc_64 \
|
|
QT_CI_LOGIN=alicevisionjunk@gmail.com \
|
|
QT_CI_PASSWORD=azerty1.
|
|
|
|
# Workaround for qmlAlembic/qtAliceVision builds: fuse lib/lib64 folders
|
|
RUN cp -rf ${AV_INSTALL}/lib/* ${AV_INSTALL}/lib64 && rm -rf ${AV_INSTALL}/lib && ln -s ${AV_INSTALL}/lib64 ${AV_INSTALL}/lib
|
|
|
|
# Install libs needed by Qt
|
|
RUN yum install -y \
|
|
flex \
|
|
fontconfig \
|
|
freetype \
|
|
glib2 \
|
|
libICE \
|
|
libX11 \
|
|
libxcb \
|
|
libXext \
|
|
libXi \
|
|
libXrender \
|
|
libSM \
|
|
libXt-devel \
|
|
libGLU-devel \
|
|
mesa-libOSMesa-devel \
|
|
mesa-libGL-devel \
|
|
mesa-libGLU-devel \
|
|
xcb-util-keysyms \
|
|
xcb-util-image \
|
|
libxkbcommon-x11
|
|
|
|
# Install Python3
|
|
RUN yum install -y centos-release-scl && yum install -y rh-python36 && source scl_source enable rh-python36 && pip install --upgrade pip
|
|
|
|
|
|
COPY ./*requirements.txt ./setup.py "${MESHROOM_DEV}/"
|
|
|
|
# Install Meshroom requirements and freeze bundle
|
|
WORKDIR "${MESHROOM_DEV}"
|
|
RUN source scl_source enable rh-python36 && pip install -r dev_requirements.txt -r requirements.txt
|
|
|
|
COPY ./docker/qt-installer-noninteractive.qs "${MESHROOM_DEV}/docker/"
|
|
|
|
# Install Qt (to build plugins)
|
|
ENV QT_VERSION_A=5.14 \
|
|
QT_VERSION_B=5.14.1
|
|
WORKDIR /tmp/qt
|
|
RUN wget https://download.qt.io/archive/qt/${QT_VERSION_A}/${QT_VERSION_B}/qt-opensource-linux-x64-${QT_VERSION_B}.run && \
|
|
chmod +x qt-opensource-linux-x64-${QT_VERSION_B}.run && \
|
|
./qt-opensource-linux-x64-${QT_VERSION_B}.run --verbose --platform minimal --script "${MESHROOM_DEV}/docker/qt-installer-noninteractive.qs" && \
|
|
rm qt-opensource-linux-x64-${QT_VERSION_B}.run
|
|
|
|
|