Skip to content

Instantly share code, notes, and snippets.

@LogWell
Forked from dbadrian/compile_meshlab.sh
Last active May 18, 2020 16:48
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save LogWell/bffd0a79ff13ec392f8fcf6749388c46 to your computer and use it in GitHub Desktop.
Save LogWell/bffd0a79ff13ec392f8fcf6749388c46 to your computer and use it in GitHub Desktop.
Compile Meshlab on Ubuntu 18.04
# https://github.com/cnr-isti-vclab/meshlab/releases/tag/25f3d17
# https://github.com/cnr-isti-vclab/meshlab/blob/master/src/README.md
# install qt5.9
# sudo apt-get install qt5-default qtcreator libqt5xmlpatterns5-dev qtscript5-dev
# install some dependencies
# sudo apt-get install libeigen3-dev
# clone repos
# git clone --depth 1 https://github.com/cnr-isti-vclab/meshlab.git
# git clone --depth 1 https://github.com/cnr-isti-vclab/vcglib.git -b devel
# apply some patch to vcglib
# ***important***
# curl https://data.gpo.zugaina.org/gentoo/media-gfx/meshlab/files/2016.12/meshlab-2016.12-remove-header.patch | patch -p1
cd meshlab
# set build flags
# without omp
# QMAKE_FLAGS=('-spec linux-g++' 'CONFIG+=release' 'CONFIG+=qml_release' 'CONFIG+=c++11' 'QMAKE_CXXFLAGS+=-fPIC' 'QMAKE_CXXFLAGS+=-std=c++11' 'QMAKE_CXXFLAGS+=-fpermissive' 'INCLUDEPATH+=/usr/include/eigen3' "LIBS+=-L`pwd`/lib/linux-g++")
# with omp: 'QMAKE_CXXFLAGS+=-fopenmp'
QMAKE_FLAGS=('-spec' 'linux-g++' 'CONFIG+=release' 'CONFIG+=qml_release' 'CONFIG+=c++11' 'QMAKE_CXXFLAGS+=-fPIC' 'QMAKE_CXXFLAGS+=-fopenmp' 'QMAKE_CXXFLAGS+=-std=c++11' 'QMAKE_CXXFLAGS+=-fpermissive' 'INCLUDEPATH+=/usr/include/eigen3' "LIBS+=-L`pwd`/lib/linux-g++")
MAKE_FLAGS=('-j12')
# building
cd src/external
qmake external.pro ${QMAKE_FLAGS[@]} && make ${MAKE_FLAGS[@]}
cp lib/linux/* lib/linux-g++/ # normally this should not be necessary? some problem i had
cd ../common
qmake common.pro ${QMAKE_FLAGS[@]} && make ${MAKE_FLAGS[@]}
cd ..
qmake meshlab_mini.pro ${QMAKE_FLAGS[@]} && make ${MAKE_FLAGS[@]}
qmake meshlab_full.pro ${QMAKE_FLAGS[@]} && make ${MAKE_FLAGS[@]}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment