alicevision / AliceVision

Photogrammetric Computer Vision Framework
http://alicevision.org
Other
3k stars 827 forks source link

OSX Installation Instructions #931

Closed freshnewegg closed 1 year ago

freshnewegg commented 3 years ago

Hi, wanted to leave an unofficial guide on how i got this working on OSX without CUDA. You can use this method if you just want to do feature extraction and SFM on Meshroom. This just builds on some of the debugging other folks have done over time.

1) Clone the repo and checkout v2.3.0. I know https://github.com/alicevision/meshroom/wiki/MacOS says you want 2.2.0 but there's some bug with it . Also, You don't need ryan baumann's work on CUDA if you're just playing with photogrammetry or don't have a GPU.

2) Follow the direction of the OSX section in https://github.com/alicevision/AliceVision/blob/develop/INSTALL.md & do mkdir build && cd build 3) brew install needed dependencies brew install ceres-solver brew install flann brew install eigen brew install openexr brew install openimageio

4)update alicevision submodules git submodule update -i

cmake -DCeres_DIR:PATH=/usr/local/Cellar/ceres-solver/1.14.0_13/lib/cmake/Ceres/ -DFLANN_INCLUDE_DIR_HINTS:PATH=/usr/local/Cellar/flann/1.9.1_9/include/ - DCMAKE_MODULE_PATH:PATH=/usr/local/Cellar/eigen/3.3.8_1/share/cmake/Modules/ -DOPENEXR_HOME:PATH=/usr/local/Cellar/openexr/2.5.3/ -DOPENIMAGEIO_LIBRARY_DIR_HINTS:PATH=/usr/local/Cellar/openimageio/2.1.18_1/lib/ -DOPENIMAGEIO_INCLUDE_DIR:PATH=/usr/local/Cellar/openimageio/2.2.7_1/include/ -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DOpenMP_CXX_FLAGS="-Xpreprocessor -fopenmp -lomp -L$(brew --prefix libomp)/lib -I$(brew --prefix libomp)/include" -DOpenMP_CXX_LIB_NAMES="omp" -DOpenMP_omp_LIBRARY=$(brew --prefix libomp)/lib/libomp.a -DCMAKE_SHARED_LINKER_FLAGS="-lomp" -DCMAKE_EXE_LINKER_FLAGS="-lomp" -DALICEVISION_USE_CUDA=OFF ../AliceVision/ -G "Unix Makefiles"

key flags to note: -DALICEVISION_USE_CUDA=OFF -> turns CUDA off so you can avoid a Nvidia graphics card if you don't have one -DCMAKE_SHARED_LINKER_FLAGS="-lomp" -> you may or may not need this. If you see any Undefined symbols for architecture x86_64 with omp then it's most likely this -DCMAKE_EXE_LINKER_FLAGS="-lomp" -> you may or may not need this. If you see any Undefined symbols for architecture x86_64 with omp then it's most likely this

6) you should then do make. Double check the files are in /usr/local/bin and in your path i.e should return something.

7) Use meshroom version v2019.2.0 as suggested in https://github.com/alicevision/meshroom/wiki/MacOS

happy building!

Screen Shot 2020-11-22 at 8 47 42 PM

github-actions[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

github-actions[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.