Closed hlzz closed 8 years ago
Strange! I just tried to compile OpenMVS with clang 3.8 on Ubuntu (as I do not have Mac) and it works fine. If you are comfortable debugging, it should be quite easy, as that file is self-contained, so if there is a problem is in that file. If you find a solution please post it here. Thx.
can you please try to add this line at line 152:
ARCHIVE_DEFINE_TYPE(size_t)
I have added it in the last push, so just reset your entire source code to the latest code on the repository
Great, this patch solves the problem.
Could you please help listing the steps you took to build OpenMVS on Mac? So that I complete the build Wiki. Thx!
Sure,
Hope it helps.
actually issue 15 is outdated, I have solve the clang issues, it should compile from the first try
I am in fact interested in listing the steps you took instaling the dependencies, that is the part I do not know how is done on mac so that I can fill the wiki
Could you write something similar to the Ubuntu version https://github.com/cdcseacave/openMVS/wiki/Building?
For your reference:
# Install dependencies
brew install opencv boost cgal eigen ceres-solver
svn checkout svn://svn.code.sf.net/p/vcg/code/trunk/vcglib vcglib
# Getting the OpenMVS sources:
git clone https://github.com/cdcseacave/openMVS.git
# Build OpenMVS
cd openMVS
mkdir build_mac
cd build_mac
cmake ../ -DCMAKE_BUILD_TYPE=RELEASE -DVCG_DIR="<vcglib_path>"
I use brew to install the dependencies. The above commands should suffice. However, as I don't have a clean mac, we'd better test it on a clean osx. For example, it seems that the cgal library of homebrew is incompatible with openMVS. I built cgal from source and openMVS intelligently found it.
Thank you a lot for this steps, that is what I needed.
Specifications like the version of the project, operating system, and hardware
I am using a macbook pro running OS X 10.11( El Capitan ). The cmake process works fine after a minor revision: -- cotire 1.7.8 loaded. -- Try OpenMP C flag = [ ] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP C flag = [-fopenmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP C flag = [/openmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP C flag = [-Qopenmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP C flag = [-openmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP C flag = [-xopenmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP C flag = [+Oopenmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP C flag = [-qsmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP C flag = [-mp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP CXX flag = [ ] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP CXX flag = [-fopenmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP CXX flag = [/openmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP CXX flag = [-Qopenmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP CXX flag = [-openmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP CXX flag = [-xopenmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP CXX flag = [+Oopenmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP CXX flag = [-qsmp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Try OpenMP CXX flag = [-mp] -- Performing Test OpenMP_FLAG_DETECTED -- Performing Test OpenMP_FLAG_DETECTED - Failed -- Could NOT find OpenMP (missing: OpenMP_C_FLAGS OpenMP_CXX_FLAGS) -- Can't find OpenMP. Continuing without it. -- WARNING: BREAKPAD was not found: Please specify BREAKPAD directory using BREAKPAD_ROOT env. variable -- Can't find BreakPad. Continuing without it. -- Boost version: 1.60.0 -- Found the following Boost libraries: -- iostreams -- program_options -- system -- serialization -- Eigen 3.2.7 found (include: /usr/local/include/eigen3) -- OpenCV 2.4.9 found (include: /usr/local/include/opencv;/usr/local/include) -- CGAL 4.7 found (include: /usr/local/Cellar/cgal/4.7/include) -- VCG found (include: /usr/local/include) -- Found required Ceres dependency: Eigen version 3.2.7 in /usr/local/include/eigen3 -- Found required Ceres dependency: Glog in /usr/local/include -- Found Ceres version: 1.11.0 installed in: /usr/local -- CERES 1.11.0 found (include: /usr/local/include;/usr/local/include/eigen3;/usr/local/include;/usr/local/include) -- ceres library ceres -- Configuring done -- Generating done
Steps to reproduce the problem
[ 20%] Built target Common [ 31%] Built target Math [ 58%] Built target IO Scanning dependencies of target MVS [ 59%] Building CXX object libs/MVS/CMakeFiles/MVS.dir/Scene.cpp.o In file included from /Users/STW/Documents/Projects/brainstorm/src/openMVS/libs/MVS/Scene.cpp:35: /Users/STW/Documents/Projects/brainstorm/src/openMVS/libs/MVS/Interface.h:85:23: error: member reference base type 'unsigned long' is not a structure or union const_cast<_Tp&>(obj).serialize(a, 0);