├── README.md ├── Singularity ├── 16.04 └── Dockerfile └── 18.04 └── Dockerfile /README.md: -------------------------------------------------------------------------------- 1 | # CloudCompare 2 | 3 | Docker build for [CloudCompare](https://www.danielgm.net/cc/) based on [NVIDIA OpenGL Ubuntu](https://hub.docker.com/r/nvidia/opengl) containers. 4 | 5 | [CloudCompare Github](https://github.com/cloudcompare/cloudcompare) 6 | 7 | image | description | size | metrics | build status 8 | ---------------- | ----------------------------------------- | ------ | ------- | -------------- 9 | [CloudCompare](https://hub.docker.com/r/tswetnam/cloudcompare) | CloudCompare w/ NVIDIA OpenGL Ubuntu 18.04 base | [![](https://images.microbadger.com/badges/image/tswetnam/cloudcompare.svg)](https://microbadger.com/images/tswetnam/cloudcompare) | [![](https://img.shields.io/docker/pulls/tswetnam/cloudcompare.svg)](https://hub.docker.com/r/tswetnam/cloudcompare) | [![](https://img.shields.io/docker/automated/tswetnam/cloudcompare.svg)](https://hub.docker.com/r/tswetnam/cloudcompare/builds) 10 | 11 | 12 | ## Instructions 13 | 14 | Pull the latest container from Docker-Hub: 15 | 16 | ``` 17 | docker pull tswetnam/cloudcompare:latest 18 | ``` 19 | 20 | Build the container yourself: 21 | 22 | ``` 23 | git clone https://github.com/tyson-swetnam/cloudcompare-docker && \ 24 | cd cloudcompare-docker 25 | docker build -t tswetnam/cloudcompare:latest . 26 | ``` 27 | 28 | ## Windows 29 | 30 | TBD 31 | 32 | ## Linux 33 | 34 | To run a [Docker GUI container](http://wiki.ros.org/docker/Tutorials/GUI#The_simple_way) with OpenGL on Intel graphics (e.g. Atmosphere Virtual Machines, Intel NUCs): 35 | 36 | **NOT SECURE** 37 | 38 | ``` 39 | xhost +local:root 40 | docker run -ti --rm -e "DISPLAY=unix$DISPLAY" -v="/tmp/.X11-unix:/tmp/.X11-unix:rw" -v /home/$USER/:/temp --privileged tswetnam/cloudcompare:latest CloudCompare 41 | ``` 42 | 43 | This method is okay on CyVerse Atmosphere, where you're running in your own Web Desktop environment. 44 | 45 | ## Mac OS X 46 | 47 | https://cntnr.io/running-guis-with-docker-on-mac-os-x-a14df6a76efc 48 | 49 | ## Singularity 50 | 51 | You can run the Docker container with Singularity (for HPC use). 52 | 53 | ``` 54 | singularity exec docker://tswetnam/cloudcompare:latest CloudCompare 55 | ``` 56 | 57 | # University of Arizona HPC 58 | 59 | Log into the HPC 60 | 61 | ``` 62 | ssh -X $USER@hpc.arizona.edu 63 | ``` 64 | 65 | Select a system from the Bastion 66 | 67 | ``` 68 | ocelote -X 69 | ``` 70 | 71 | Start a GPU node 72 | 73 | ``` 74 | qsub -X -I -N cloudcompare -m bea -W group_list=$GROUP -q windfall -l select=1:ncpus=28:mem=168gb:ngpus=1 -l cput=1:0:0 -l walltime=1:0:0 75 | ``` 76 | 77 | Load Cuda and Singularity 78 | 79 | ``` 80 | module load cuda80/gtk 81 | module load singularity 82 | ``` 83 | 84 | Run the container and start CloudCompare 85 | 86 | ``` 87 | singularity exec --bind /xdisk/$USER docker://tswetnam/cloudcompare:latest CloudCompare 88 | ``` 89 | 90 | If you get an error, you may need to reset the DISPLAY. 91 | 92 | Find out what the local display is: 93 | 94 | ``` 95 | echo $DISPLAY 96 | ``` 97 | 98 | Run Docker container as shell 99 | 100 | ``` 101 | singularity shell --bind /xdisk/$USER docker://tswetnam/cloudcompare:latest 102 | ``` 103 | 104 | From the Singularity shell: 105 | 106 | ``` 107 | export DISPLAY=localhost:50.0 108 | ``` 109 | 110 | Start CloudCompare 111 | 112 | ``` 113 | CloudCompare 114 | ``` 115 | -------------------------------------------------------------------------------- /Singularity: -------------------------------------------------------------------------------- 1 | Bootstrap: docker 2 | From: tswetnam/cloudcompare 3 | 4 | %help 5 | Run CloudCompare: $ CloudCompare 6 | Run CC viewer: $ ccViewer 7 | Run PDAL: pdalinfo 8 | 9 | %apprun vncserver 10 | exec vncserver "${@}" 11 | 12 | %apprun vncpasswd 13 | exec vncpasswd "${@}" 14 | 15 | %apprun websockify 16 | exec /opt/websockify/run "${@}" 17 | 18 | %runscript 19 | exec vncserver "${@}" 20 | 21 | %environment 22 | export PATH=/opt/TurboVNC/bin:/opt/VirtualGL/bin:${PATH} 23 | 24 | %post 25 | # Software versions 26 | export TURBOVNC_VERSION=2.1.2 27 | export VIRTUALGL_VERSION=2.5.2 28 | export LIBJPEG_VERSION=1.5.2 29 | 30 | # Get dependencies 31 | apt-get update 32 | apt-get install -y --no-install-recommends \ 33 | emacs \ 34 | vim \ 35 | nano \ 36 | lshw \ 37 | lsb-release \ 38 | bash-completion \ 39 | kmod \ 40 | iputils-ping \ 41 | net-tools \ 42 | ca-certificates \ 43 | locales \ 44 | curl \ 45 | gcc \ 46 | make \ 47 | wget \ 48 | ca-certificates \ 49 | xauth \ 50 | xfonts-base \ 51 | xkb-data \ 52 | x11-xkb-utils \ 53 | xorg \ 54 | openbox \ 55 | libc6-dev \ 56 | libxv1 \ 57 | libxv1:i386 \ 58 | mesa-utils \ 59 | mesa-utils-extra \ 60 | x11-apps \ 61 | dbus-x11 \ 62 | libglib2.0-tests \ 63 | git \ 64 | libxcb-keysyms1-dev \ 65 | apt-transport-https 66 | 67 | # XFCE4 Desktop 68 | apt-get install -y --no-install-recommends \ 69 | build-essential \ 70 | software-properties-common \ 71 | glib-2.0-dev \ 72 | libgtk2.0-dev \ 73 | libxfce4ui-1-dev \ 74 | xfce4 \ 75 | gtk3-engines-xfce \ 76 | xfce4-notifyd \ 77 | xfce4-taskmanager \ 78 | xfce4-terminal \ 79 | libgtk-3-bin 80 | add-apt-repository ppa:rebuntu16/other-stuff 81 | apt-get update 82 | apt-get install -y xfce-theme-manager 83 | 84 | 85 | # Configure default locale 86 | echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen 87 | locale-gen en_US.utf8 88 | /usr/sbin/update-locale LANG=en_US.UTF-8 89 | export LC_ALL=en_US.UTF-8 90 | export LANG=en_US.UTF-8 91 | 92 | # Install TurboVNC 93 | wget https://sourceforge.net/projects/turbovnc/files/${TURBOVNC_VERSION}/turbovnc_${TURBOVNC_VERSION}_amd64.deb -q 94 | dpkg -i turbovnc_${TURBOVNC_VERSION}_amd64.deb 95 | rm turbovnc_${TURBOVNC_VERSION}_amd64.deb 96 | 97 | # Install VirtualGL 98 | wget https://svwh.dl.sourceforge.net/project/libjpeg-turbo/${LIBJPEG_VERSION}/libjpeg-turbo-official_${LIBJPEG_VERSION}_amd64.deb 99 | wget https://svwh.dl.sourceforge.net/project/virtualgl/${VIRTUALGL_VERSION}/virtualgl_${VIRTUALGL_VERSION}_amd64.deb 100 | wget https://svwh.dl.sourceforge.net/project/virtualgl/${VIRTUALGL_VERSION}/virtualgl32_${VIRTUALGL_VERSION}_amd64.deb 101 | dpkg -i libjpeg-turbo-official_${LIBJPEG_VERSION}_amd64.deb 102 | dpkg -i virtualgl_${VIRTUALGL_VERSION}_amd64.deb 103 | dpkg -i virtualgl32_${VIRTUALGL_VERSION}_amd64.deb 104 | rm -f *.deb 105 | 106 | # Install noVNC 107 | cd /opt 108 | git clone https://github.com/novnc/noVNC/ 109 | 110 | # Install websockify 111 | apt-get update 112 | apt-get install -y --no-install-recommends \ 113 | python \ 114 | python-numpy 115 | mkdir -p /opt/websockify 116 | wget https://github.com/novnc/websockify/archive/master.tar.gz -q -O - | tar xzf - -C /opt/websockify --strip-components=1 117 | 118 | # NVIDIA Container Runtime 119 | apt-get install -y gnupg2 120 | curl -s -L https://nvidia.github.io/nvidia-container-runtime/gpgkey | \ 121 | apt-key add - 122 | distribution=$(. /etc/os-release;echo $ID$VERSION_ID) 123 | curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-container-runtime.list | \ 124 | tee /etc/apt/sources.list.d/nvidia-container-runtime.list 125 | apt-get update 126 | apt-get install -y nvidia-container-runtime 127 | ldconfig 128 | 129 | # NVIDIA Drivers 130 | add-apt-repository ppa:graphics-drivers/ppa 131 | apt update 132 | apt install -y nvidia-396 nvidia-modprobe 133 | 134 | # in-container bind points for shared filesystems 135 | mkdir -p /extra /xdisk /uaopt /cm/shared /rsgrps 136 | 137 | # Clean up 138 | rm -rf /var/lib/apt/lists/* 139 | 140 | %environment 141 | export DISPLAY=$DISPLAY 142 | 143 | %labels 144 | MAINTAINER Tyson Lee Swetnam 145 | Version v0.1 146 | -------------------------------------------------------------------------------- /16.04/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM nvidia/opengl:1.1-glvnd-devel-ubuntu16.04 2 | 3 | RUN export DEBIAN_FRONTEND=noninteractive 4 | 5 | # Install PPA for dependencies 6 | RUN apt-get update && apt-get upgrade -y --allow-unauthenticated && \ 7 | apt-get install -y --allow-unauthenticated build-essential software-properties-common apt-utils && \ 8 | add-apt-repository --yes ppa:webupd8team/y-ppa-manager && \ 9 | apt-get update && \ 10 | apt-get install -y y-ppa-manager && \ 11 | add-apt-repository --yes ppa:george-edison55/cmake-3.x && \ 12 | add-apt-repository --yes ppa:beineri/opt-qt571-xenial && \ 13 | add-apt-repository --yes ppa:ubuntu-x-swat/updates && \ 14 | apt-get update 15 | 16 | # Install various dependencies 17 | RUN apt-get install -y --allow-unauthenticated \ 18 | clang \ 19 | cmake \ 20 | curl \ 21 | ffmpeg \ 22 | gcc \ 23 | git \ 24 | libavcodec-dev \ 25 | libavformat-dev \ 26 | libavutil-dev \ 27 | libboost-all-dev \ 28 | libcgal-dev \ 29 | libcgal-qt5-dev \ 30 | libeigen3-dev \ 31 | libfreenect-dev \ 32 | libfreetype6-dev \ 33 | libgdal1-dev \ 34 | libpng12-dev \ 35 | libproj-dev \ 36 | libqt5svg5-dev \ 37 | libqt5opengl5-dev \ 38 | libswscale-dev \ 39 | libtbb-dev \ 40 | libxerces-c-dev \ 41 | libzmq3-dev \ 42 | module-init-tools \ 43 | pkg-config \ 44 | python \ 45 | python-dev \ 46 | python3 \ 47 | # qt5-default \ 48 | qt57base \ 49 | rsync \ 50 | unzip \ 51 | zip \ 52 | zlib1g-dev \ 53 | openjdk-8-jdk \ 54 | openjdk-8-jre-headless \ 55 | vim \ 56 | wget \ 57 | libxpm-dev && \ 58 | apt-get clean && \ 59 | rm -rf /var/lib/apt/lists/* 60 | 61 | RUN ln -s /usr/lib/x86_64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/libvtkproj4.so 62 | 63 | # Install OpenGL Drivers 64 | RUN apt-get update && \ 65 | apt-get install -y libglu1-mesa-dev freeglut3-dev mesa-common-dev mesa-utils 66 | 67 | # GDAL 68 | RUN add-apt-repository --yes ppa:ubuntugis/ppa && \ 69 | apt-get update && \ 70 | apt-get install -y libgdal-dev libgdal1i libgdal1-dev && \ 71 | apt-get upgrade && \ 72 | apt-get install -y gdal-bin python-gdal python3-gdal libgeotiff-dev libjsoncpp-dev python-numpy 73 | 74 | #LASZIP 75 | RUN git clone https://github.com/LASzip/LASzip && \ 76 | cd LASzip && \ 77 | git tag && \ 78 | git checkout tags/3.2.2 && \ 79 | mkdir build && \ 80 | cd build && \ 81 | cmake .. && \ 82 | #./configure && \ 83 | make && \ 84 | make install 85 | 86 | # EIGEN 87 | RUN wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/eigen3/3.3.4-2/eigen3_3.3.4.orig.tar.bz2 && \ 88 | tar xvjf eigen* && \ 89 | cd eigen-eigen* && \ 90 | mkdir build && \ 91 | cd build && \ 92 | cmake -DCMAKE_BUILD_TYPE=Release \ 93 | .. && \ 94 | make && \ 95 | make install 96 | 97 | #PDAL 98 | RUN wget https://github.com/PDAL/PDAL/releases/download/1.7.2/PDAL-1.7.2-src.tar.gz && \ 99 | tar xvzf PDAL-1.7.2-src.tar.gz && \ 100 | cd PDAL-1.7.2-src && \ 101 | mkdir build && \ 102 | cd build && \ 103 | cmake -DCMAKE_BUILD_TYPE=Release \ 104 | -DWITH_TESTS=OFF \ 105 | -DWITH_LASZIP=ON \ 106 | -DBUILD_PLUGIN_PYTHON=OFF \ 107 | -DBUILD_PLUGIN_PGPOINTCLOUD=OFF \ 108 | .. && \ 109 | make && \ 110 | make install 111 | 112 | # PCL 113 | #RUN add-apt-repository --yes ppa:v-launchpad-jochen-sprickerhof-de/pcl && \ 114 | # apt-get update && \ 115 | # apt-get install -y libpcl-all libpcl-dev 116 | 117 | RUN /sbin/ldconfig 118 | 119 | # Install CloudCompare Trunk from Github 120 | RUN git clone https://github.com/cloudcompare/cloudcompare && \ 121 | cd cloudcompare && \ 122 | git submodule init && \ 123 | git submodule update && \ 124 | mkdir build && \ 125 | cd build && \ 126 | cmake -DCMAKE_BUILD_TYPE=Release \ 127 | -DQT5_ROOT_PATH=/opt/qt57 \ 128 | -DEIGEN_ROOT_DIR=/usr/include/eigen3 \ 129 | -DCOMPILE_CC_CORE_LIB_WITH_TBB=ON \ 130 | -DCOMPILE_CC_CORE_LIB_WITH_CGAL=ON \ 131 | -DINSTALL_EXAMPLE_PLUGIN=ON \ 132 | -DINSTALL_EXAMPLE_GL_PLUGIN=ON \ 133 | -DINSTALL_EXAMPLE_IO_PLUGIN=ON \ 134 | -DINSTALL_QADDITIONAL_IO_PLUGIN=ON \ 135 | -DINSTALL_QANIMATION_PLUGIN=ON \ 136 | -DINSTALL_QBROOM_PLUGIN=ON \ 137 | -DINSTALL_QCOMPASS_PLUGIN=ON \ 138 | -DINSTALL_QCSF_PLUGIN=ON \ 139 | -DINSTALL_QEDL_PLUGIN=ON \ 140 | -DINSTALL_QFACETS_PLUGIN=ON \ 141 | -DINSTALL_QHOUGH_NORMALS_PLUGIN=ON \ 142 | -DINSTALL_QHPR_PLUGIN=ON \ 143 | -DINSTALL_QM3C2_PLUGIN=ON \ 144 | -DINSTALL_QPCV_PLUGIN=ON \ 145 | -DINSTALL_QPHOTOSCAN_IO_PLUGIN=ON \ 146 | -DINSTALL_QPOISSON_RECON_PLUGIN=ON \ 147 | -DPOISSON_RECON_WITH_OPEN_MP=ON \ 148 | -DINSTALL_QSRA_PLUGIN=ON \ 149 | -DINSTALL_QSSAO_PLUGIN=ON \ 150 | -DWITH_FFMPEG_SUPPORT=ON \ 151 | -DFFMPEG_INCLUDE_DIR=/usr/include/x86_64-linux-gnu \ 152 | -DFFMPEG_LIBRARY_DIR=/usr/lib/x86_64-linux-gnu \ 153 | -DOPTION_USE_GDAL=ON \ 154 | -DOPTION_PDAL_LAS=ON \ 155 | -DJSON_ROOT_DIR=/usr/include/jsoncpp \ 156 | -DOPTION_USE_DXF_LIB=ON \ 157 | -DOPTION_USE_SHAPE_LIB=ON \ 158 | -DOPTION_USE_DXF_LIB=ON \ 159 | #-DINSTALL_QPCL_PLUGIN=ON \ 160 | .. && \ 161 | make && \ 162 | make install 163 | 164 | RUN cd && rm -rf eigen3_3.3.4.orig.tar.bz2 && \ 165 | rm -rf PDAL-1.7.2-src.tar.gz 166 | 167 | ENV LD_LIBRARY_PATH /opt/qt57/lib/ 168 | 169 | VOLUME /tmp/.X11-unix 170 | 171 | # build info 172 | RUN echo "Timestamp:" `date --utc` | tee /image-build-info.txt 173 | MAINTAINER Tyson Lee Swetnam 174 | -------------------------------------------------------------------------------- /18.04/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM nvidia/opengl:1.1-glvnd-devel-ubuntu16.04 2 | 3 | RUN export DEBIAN_FRONTEND=noninteractive 4 | 5 | # Install PPA for dependencies 6 | RUN apt-get update && apt-get upgrade -y --allow-unauthenticated && \ 7 | apt-get install -y --allow-unauthenticated build-essential software-properties-common apt-utils && \ 8 | add-apt-repository --yes ppa:webupd8team/y-ppa-manager && \ 9 | apt-get update && \ 10 | apt-get install -y y-ppa-manager && \ 11 | add-apt-repository --yes ppa:george-edison55/cmake-3.x && \ 12 | add-apt-repository --yes ppa:beineri/opt-qt571-xenial && \ 13 | add-apt-repository --yes ppa:ubuntu-x-swat/updates && \ 14 | apt-get update 15 | 16 | # Install various dependencies 17 | RUN apt-get install -y --allow-unauthenticated \ 18 | clang \ 19 | cmake \ 20 | curl \ 21 | ffmpeg \ 22 | gcc \ 23 | git \ 24 | libavcodec-dev \ 25 | libavformat-dev \ 26 | libavutil-dev \ 27 | libboost-all-dev \ 28 | libcgal-dev \ 29 | libcgal-qt5-dev \ 30 | libeigen3-dev \ 31 | libfreenect-dev \ 32 | libfreetype6-dev \ 33 | libgdal1-dev \ 34 | libpng12-dev \ 35 | libproj-dev \ 36 | libqt5svg5-dev \ 37 | libqt5opengl5-dev \ 38 | libswscale-dev \ 39 | libtbb-dev \ 40 | libxerces-c-dev \ 41 | libzmq3-dev \ 42 | module-init-tools \ 43 | pkg-config \ 44 | python \ 45 | python-dev \ 46 | python3 \ 47 | qt5-default \ 48 | qt57base \ 49 | rsync \ 50 | unzip \ 51 | zip \ 52 | zlib1g-dev \ 53 | openjdk-8-jdk \ 54 | openjdk-8-jre-headless \ 55 | vim \ 56 | wget \ 57 | libxpm-dev && \ 58 | apt-get clean && \ 59 | rm -rf /var/lib/apt/lists/* 60 | 61 | RUN ln -s /usr/lib/x86_64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/libvtkproj4.so 62 | 63 | # Install OpenGL Drivers 64 | RUN apt-get update && \ 65 | apt-get install -y libglu1-mesa-dev freeglut3-dev mesa-common-dev mesa-utils 66 | 67 | # GDAL 68 | RUN add-apt-repository --yes ppa:ubuntugis/ppa && \ 69 | apt-get update && \ 70 | apt-get install -y libgdal-dev libgdal1i libgdal1-dev && \ 71 | apt-get upgrade && \ 72 | apt-get install -y gdal-bin python-gdal python3-gdal libgeotiff-dev libjsoncpp-dev python-numpy 73 | 74 | #LASZIP 75 | RUN git clone https://github.com/LASzip/LASzip && \ 76 | cd LASzip && \ 77 | git tag && \ 78 | git checkout tags/3.2.2 && \ 79 | mkdir build && \ 80 | cd build && \ 81 | cmake .. && \ 82 | #./configure && \ 83 | make && \ 84 | make install 85 | 86 | # EIGEN 87 | RUN wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/eigen3/3.3.4-2/eigen3_3.3.4.orig.tar.bz2 && \ 88 | tar xvjf eigen* && \ 89 | cd eigen-eigen* && \ 90 | mkdir build && \ 91 | cd build && \ 92 | cmake -DCMAKE_BUILD_TYPE=Release \ 93 | .. && \ 94 | make && \ 95 | make install 96 | 97 | #PDAL 98 | RUN wget https://github.com/PDAL/PDAL/releases/download/1.7.2/PDAL-1.7.2-src.tar.gz && \ 99 | tar xvzf PDAL-1.7.2-src.tar.gz && \ 100 | cd PDAL-1.7.2-src && \ 101 | mkdir build && \ 102 | cd build && \ 103 | cmake -DCMAKE_BUILD_TYPE=Release \ 104 | -DWITH_TESTS=OFF \ 105 | -DWITH_LASZIP=ON \ 106 | -DBUILD_PLUGIN_PYTHON=OFF \ 107 | -DBUILD_PLUGIN_PGPOINTCLOUD=OFF \ 108 | .. && \ 109 | make && \ 110 | make install 111 | 112 | # PCL 113 | #RUN add-apt-repository --yes ppa:v-launchpad-jochen-sprickerhof-de/pcl && \ 114 | # apt-get update && \ 115 | # apt-get install -y libpcl-all libpcl-dev 116 | 117 | RUN /sbin/ldconfig 118 | 119 | # Install CloudCompare Trunk from Github 120 | RUN git clone https://github.com/cloudcompare/cloudcompare && \ 121 | cd cloudcompare && \ 122 | git submodule init && \ 123 | git submodule update && \ 124 | mkdir build && \ 125 | cd build && \ 126 | cmake -DCMAKE_BUILD_TYPE=Release \ 127 | -DQT5_ROOT_PATH=/opt/qt57 \ 128 | -DEIGEN_ROOT_DIR=/usr/include/eigen3 \ 129 | -DCOMPILE_CC_CORE_LIB_WITH_TBB=ON \ 130 | -DCOMPILE_CC_CORE_LIB_WITH_CGAL=ON \ 131 | -DINSTALL_EXAMPLE_PLUGIN=ON \ 132 | -DINSTALL_EXAMPLE_GL_PLUGIN=ON \ 133 | -DINSTALL_EXAMPLE_IO_PLUGIN=ON \ 134 | -DINSTALL_QADDITIONAL_IO_PLUGIN=ON \ 135 | -DINSTALL_QANIMATION_PLUGIN=ON \ 136 | -DINSTALL_QBROOM_PLUGIN=ON \ 137 | -DINSTALL_QCOMPASS_PLUGIN=ON \ 138 | -DINSTALL_QCSF_PLUGIN=ON \ 139 | -DINSTALL_QEDL_PLUGIN=ON \ 140 | -DINSTALL_QFACETS_PLUGIN=ON \ 141 | -DINSTALL_QHOUGH_NORMALS_PLUGIN=ON \ 142 | -DINSTALL_QHPR_PLUGIN=ON \ 143 | -DINSTALL_QM3C2_PLUGIN=ON \ 144 | -DINSTALL_QPCV_PLUGIN=ON \ 145 | -DINSTALL_QPHOTOSCAN_IO_PLUGIN=ON \ 146 | -DINSTALL_QPOISSON_RECON_PLUGIN=ON \ 147 | -DPOISSON_RECON_WITH_OPEN_MP=ON \ 148 | -DINSTALL_QSRA_PLUGIN=ON \ 149 | -DINSTALL_QSSAO_PLUGIN=ON \ 150 | -DWITH_FFMPEG_SUPPORT=ON \ 151 | -DFFMPEG_INCLUDE_DIR=/usr/include/x86_64-linux-gnu \ 152 | -DFFMPEG_LIBRARY_DIR=/usr/lib/x86_64-linux-gnu \ 153 | -DOPTION_USE_GDAL=ON \ 154 | -DOPTION_PDAL_LAS=ON \ 155 | -DJSON_ROOT_DIR=/usr/include/jsoncpp \ 156 | -DOPTION_USE_DXF_LIB=ON \ 157 | -DOPTION_USE_SHAPE_LIB=ON \ 158 | -DOPTION_USE_DXF_LIB=ON \ 159 | #-DINSTALL_QPCL_PLUGIN=ON \ 160 | .. && \ 161 | make && \ 162 | make install 163 | 164 | RUN cd && rm -rf eigen3_3.3.4.orig.tar.bz2 && \ 165 | rm -rf PDAL-1.7.2-src.tar.gz 166 | 167 | ENV LD_LIBRARY_PATH /opt/qt57/lib/ 168 | 169 | VOLUME /tmp/.X11-unix 170 | 171 | # build info 172 | RUN echo "Timestamp:" `date --utc` | tee /image-build-info.txt 173 | MAINTAINER Tyson Lee Swetnam 174 | --------------------------------------------------------------------------------