Skip to content

Latest commit

 

History

History
78 lines (59 loc) · 2.36 KB

BUILD.md

File metadata and controls

78 lines (59 loc) · 2.36 KB

Dependencies

OpenMVS relies on a number of open source libraries, some of which are optional. For details on customizing the build process, see the compilation instructions.

  • Eigen version 3.2 or higher, 3.3 not supported
  • OpenCV version 2.4 or higher
  • Ceres version 1.10 or higher
  • CGAL version 4.2 or higher
  • Boost version 1.56 or higher
  • VCG
  • GLFW

Build instructions

Required tools:

  • CMake
  • git
  • C/C++ compiler like Visual Studio or GCC

Linux compilation

Ubuntu 16.04 is used next as the example linux distribution.

Install Conan from https://https://conan.io/

#VCGLib (Required)
git clone https://github.com/cdcseacave/VCG.git vcglib

#Ceres (optional)
sudo apt-get -y install libatlas-base-dev libsuitesparse-dev
git clone https://ceres-solver.googlesource.com/ceres-solver ceres-solver
mkdir ceres_build && cd ceres_build
cmake . ../ceres-solver/ -DMINIGLOG=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF
make -j2 && sudo make install
cd ..

#GLFW3 (Optional)
sudo apt-get -y install freeglut3-dev libglew-dev libglfw3-dev

#OpenMVS
git clone https://github.com/cdcseacave/openMVS.git openMVS
mkdir openMVS_build && cd openMVS_build
conan install .. -b missing
cmake . ../openMVS -DCMAKE_BUILD_TYPE=Release -DVCG_ROOT="$main_path/vcglib"

#If you want to use OpenMVS as shared library, add to the CMake command:
-DBUILD_SHARED_LIBS=ON

#Install OpenMVS library (optional):
make -j2 && sudo make install

Windows compilation

Visual Studio 2008 or newer are supported.

The build steps should be the same as in Linux, but haven't be tested.

#Run CMake, where VCPKG_ROOT environment variable points to the root of vcpkg installation:
cmake . ..\src -G "Visual Studio 15 2017 Win64" -DCMAKE_TOOLCHAIN_FILE=%VCPKG_ROOT%\scripts\buildsystems\vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows -DVCG_ROOT="..\VCG"

#Open the solution in MSVC and build it

Mac OS X compilation

The build steps should be the same as in Linux, but haven't be tested.