Meshroom: MacOS relealese please

Created on 26 Aug 2018  ·  40Comments  ·  Source: alicevision/meshroom

It would be amazing if you compiled this for MacOS.

OSX stale

Most helpful comment

Hello if your Mac® Use an AMD® GPU ( As most recently Mac®) the compiled software will not work for the complete reconstruction and this issue is related to "Remove CUDA dependency":
https://github.com/alicevision/AliceVision/issues/439

All 40 comments

Hello if your Mac® Use an AMD® GPU ( As most recently Mac®) the compiled software will not work for the complete reconstruction and this issue is related to "Remove CUDA dependency":
https://github.com/alicevision/AliceVision/issues/439

I have a MacPro running a GTX Titan.

There is no release yet, but someone has made a nice work to build it with homebrew:
https://ryanfb.github.io/etc/2018/08/17/alicevision_and_meshroom_on_mac_os_x.html
This will greatly help to provide a macos release.

I would also really like to see a macOS release! I fiddled for a few hours with building it myself but kept running into issues. I am running a Mac Pro 5,1 with a CUDA-capable GPU.

would also like to see a macOS release :D

Sorry, we don't have a Macos to do it.
Hopefully someone will make a build and share it :s

One for us on mac please :D

You don't need a mac to do it, Run it virtually or dual boot hackintosh. both ways are super easy. Not that I'm complaining but that doesn't work as an excuse for the community.

I find this ironic, on one thread people are complaining about the use of CUDA because it's a "non-free" and "proprietary" technology, and on this thread some of these same people want to run it on an OS that's "non-free" and getting more and more closed (e.g., deprecation with future removal of OpenGL and OpenCL).

I successfully compiled alicevision on MacOS following ryanfbs guide. There are tools to create-dmg (or py2app) you could give a try.

You can download the precompiled meshroom_osx.zip (edit: to be updated) (including sensordb and shifttree).
To use these files: 1) install the NVIDIA drivers/CUDA (read->ryanfb MR OSX) 2) unzip the folder in your home directory 3) run the terminal with cd meshroom pip install -r requirements.txt (you might need to install pip first: sudo easy_install pip), then for i in /Developer/NVIDIA/CUDA-9.2/lib/*.a /Developer/NVIDIA/CUDA-9.2/lib/*.dylib; do ln -sv "$i" "/usr/local/lib/$(basename "$i")"; done (one time only)
4) launch meshroom with terminal, insert (sudo) ALICEVISION_SENSOR_DB=meshroom/cameraSensors.db ALICEVISION_VOCTREE=meshroom/vlfeat_K80L3.SIFT.tree PYTHONPATH=$PWD python meshroom/ui

Note: I did not test this on a second machine, so it might not work for you. (You still can compile it yourself)

Thanks i'll try

[email protected]

I find this ironic, on one thread people are complaining about the use of CUDA because it's a "non-free" and "proprietary" technology, and on this thread some of these same people want to run it on an OS that's "non-free" and getting more and more closed (e.g., deprecation with future removal of OpenGL and OpenCL).

What the hell are you talking about? Read the Mac OS eula. It's free to use on any compatible hardware since 2016. And deprecation of OpenGL doesn't mean that Metal will be so different that you won't be able to write a simple bridge. Stop your irony dude we're not socialists here. and there already is a non-official build

Read the Mac OS eula. It's free to use on any compatible hardware since 2016.

CUDA is also free to use, as in free of charge. That's not what people are complaining about. They're complaining about it being a closed proprietary technology, but it's no more closed and proprietary than OSX is becoming given depreciation of industry-standard APIs.

And deprecation of OpenGL doesn't mean that Metal will be so different that you won't be able to write a simple bridge.

Who is "you" that is doing the work? Are YOU willing to roll up your sleeves and contribute?

I took natowi's meshroom_osx.zip and can use it to start meshroom after git clone the meshroom repo to get the requirements.txt file.
I needed to add the pip installed packages to the pythonpath for it to start:
ALICEVISION_SENSOR_DB=meshroom/cameraSensors.db ALICEVISION_VOCTREE=meshroom/vlfeat_K80L3.SIFT.tree PYTHONPATH=$PWD:/usr/local/lib/python2.7/site-packages/ python meshroom/ui
however meshroom does not even load images as alicevision is not installed. ryanfb's brew command did fail on one of the last steps for me:
[ 58%] Built target aliceVision_mesh

I then tryed to build it by hand so i took the sources from the github page and disabled OpenMP to get cmake produce a Makefile. However this fails at:
[ 49%] Linking CXX shared library ../../../Darwin-x86_64/libaliceVision_matching.dylib Undefined symbols for architecture x86_64: "_LZ4_compress_HC_continue", referenced from: flann::serialization::SaveArchive::flushBlock() in RegionsMatcher.cpp.o "_LZ4_decompress_safe", referenced from: flann::serialization::LoadArchive::decompressAndLoadV10(__sFILE*) in RegionsMatcher.cpp.o "_LZ4_decompress_safe_continue", referenced from: flann::serialization::LoadArchive::loadBlock(char*, unsigned long, __sFILE*) in RegionsMatcher.cpp.o "_LZ4_resetStreamHC", referenced from: flann::serialization::SaveArchive::initBlock() in RegionsMatcher.cpp.o "_LZ4_setStreamDecode", referenced from: flann::serialization::LoadArchive::initBlock(__sFILE*) in RegionsMatcher.cpp.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: *** [Darwin-x86_64/libaliceVision_matching.2.0.dylib] Error 1 make[1]: *** [src/aliceVision/matching/CMakeFiles/aliceVision_matching.dir/all] Error 2 make: *** [all] Error 2

@FunWithFlaggs

however meshroom does not even load images as alicevision is not installed

Thanks for the info. I´ll have to look where alicevision is stored so I can add it to the zip file.
I can not say how long this will take, as I used a friends mac.

to get until the nvcc part (~80% through build of AliceVision) i used the following cmake command:

cmake .. -DCMAKE_C_FLAGS_RELEASE=-DNDEBUG -DCMAKE_CXX_FLAGS_RELEASE=-DNDEBUG -DCMAKE_BUILD_TYPE=Release -DCMAKE_FIND_FRAMEWORK=LAST -DCMAKE_VERBOSE_MAKEFILE=ON -Wno-dev -DCMAKE_BUILD_TYPE=Release -DALICEVISION_USE_OPENMP:BOOL=OFF -DALICEVISION_USE_ALEMBIC:BOOL=ON -DFLANN_INCLUDE_DIR_HINTS:PATH=/usr/local/opt/flann/include

However im now stuck at
nvcc fatal : The version ('10.0') of the host compiler ('Apple clang') is not supported.
Guess i need to go back to some older version :/

Read the Mac OS eula. It's free to use on any compatible hardware since 2016.

CUDA is also free to use, as in free of charge. That's not what people are complaining about. They're complaining about it being a closed proprietary technology, but it's no more closed and proprietary than OSX is becoming given depreciation of industry-standard APIs.

And deprecation of OpenGL doesn't mean that Metal will be so different that you won't be able to write a simple bridge.

Who is "you" that is doing the work? Are YOU willing to roll up your sleeves and contribute?

I mean that what u said was cynical moronic and simply false. I don't answer your questions here. I reply to your BS which is a plain uninformed lie.

Can anyone share the full working build? I'm kinda stuck with with Cmake too

to get until the nvcc part (~80% through build of AliceVision) i used the following cmake command:

cmake .. -DCMAKE_C_FLAGS_RELEASE=-DNDEBUG -DCMAKE_CXX_FLAGS_RELEASE=-DNDEBUG -DCMAKE_BUILD_TYPE=Release -DCMAKE_FIND_FRAMEWORK=LAST -DCMAKE_VERBOSE_MAKEFILE=ON -Wno-dev -DCMAKE_BUILD_TYPE=Release -DALICEVISION_USE_OPENMP:BOOL=OFF -DALICEVISION_USE_ALEMBIC:BOOL=ON -DFLANN_INCLUDE_DIR_HINTS:PATH=/usr/local/opt/flann/include

However im now stuck at
nvcc fatal : The version ('10.0') of the host compiler ('Apple clang') is not supported.
Guess i need to go back to some older version :/

@FunWithFlaggs yes, you should check your cuda version and xcode version and find which version of xcode suits you better.
Also, did u fix the link error u were mentioning before? Was it because you didn't have zlib installed?

@simogasp i fixed it with that options passed to cmake which i got from @ryanfb brew command.
I also downgraded my Xcode to 9.2 and can now get past the nvcc error, however i have to fix a bunch of "did not find this and that header" errors by symlinking them. Not sure if i will get a working build with this but i will post my results later.

Okay seems like i got through the build, i can use Meshroom now. However it seems like i have some CUDE/GPU Driver issues (im not very used to CUDE dev):

[error] cudaGetDeviceCount failed: CUDA driver version is insufficient for CUDA runtime version

I get this error on the DepthMap step in Meshroom, any ideas?

Im on OSX 10.14 using CUDA driver 410.130 and GPU driver 355.11.10.50.10.103 and NVIDIA Web Driver 387.10.10.10.40.113
In /Developer/NVIDIA/ i got a CUDA-10.0 folder, so i guess thats the version number..

@FunWithFlaggs CUDA is not currently supported on macOS 10.14. NVIDIA is advising Mac CUDA users to continue using macOS 10.13 until CUDA support is added to Mojave, but as far as I know they have not given a definite timeline for this.

Edit: https://devtalk.nvidia.com/default/topic/1042279/cuda-setup-and-installation/cuda-10-and-macos-10-14/

Thats really sad, just saw it. I will try to run my compiled stuff on my older MBP which doesnt have Mojave installed, hopefully it will work there.

Edit: Will most likely do this on my windows box, not sure how long it will take until there is CUDA support for Mojave. If the compiled build files of AliceVision do help someone i could provide mine..

hi natowi, where could I find "meshroom_osx.zip" ?
hi FunWithFlaggs, I would give a try with the compiled build files of Alicevision.
I use now 10.10.5 on a Macbookpro with Cuda drivers installed.

hi FunWithFlaggs, I would give a try with the compiled build files of Alicevision.
I use now 10.10.5 on a Macbookpro with Cuda drivers installed.

@ubilaptop Here is what i have out of my build, however im not sure if it will also work on your mac.
aliceVision_build.zip

@FunWithFlaggs hi, downloaded and extracted you zip file, it contains some dylib files and some exec., but no application in the proper sense. Maybe I have missed something. I can read and study some document if you may point it out.
By the way, I have read the very good report on https://ryanfb.github.io/etc/2018/08/17/alicevision_and_meshroom_on_mac_os_x.html but I would not like to follow it since it requires the last state of art of system and CUDA, and this would mess app my system and some heritage application. (attched a listing of downloaded files)
t.txt

@ubilaptop i have those exec at /usr/local/bin and the .dylib at /usr/local/lib/ and meshroom finds them in there. Basically you need meshroom to find those exec and dylib as it is using them behind the scenes.

thank you !
I’m a "middle way” expert on mac, so I could have missed something trivial.
I have macport and brew installed on my system.
So now I'm waiting to see if I can download "meshroom_osx.zip", to have a try.
Could someone point out a possibile location ?
After that, I guess it is crucial how "up to date" are Cuda drivers againist the precompiled version.
I have in my system 10.10.5 the CUDA Driver Version: 7.5.30.

Otherwise, as staded in this article https://ryanfb.github.io/etc/2018/08/17/alicevision_and_meshroom_on_mac_os_x.html I need to update both operating system (to 10.13) and install Cuda toolkit to 9.2 (not only drivers) as well as to regress Xcode to 9.2.

if ever, to do this I will need a different machine, since the installation would mess up any "heritage" version of my programs.

@ubilaptop Prebuild Meshroom-osx + FunWithFlaggs aliceVision_build.zip / (At the moment I have no time to look into this)

+1 Would also love to run this on mac.
I'm using an eGPU with nvidia driver 410.130 and a gtx titan x maxwell.

+1 Mac or hackintosh support would be great.

I bet most of the people complaining about mac being closed source still use windows

still waiting for mac official release

@ConnorBP We're an all Mac shop. Would love a Mac release

please Mac OS release...

https://github.com/ryanfb/homebrew-alicevision/issues/5?_pjax=%23js-repo-pjax-container
you should get a working osx version following those comments and/or using the brew commands.

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.

Also looking for a MacOS release. Currently on Catalina w. Intel Iris Plus Graphics 655.

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.

This issue is closed due to inactivity. Feel free to re-open if new information is available.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

GJPfaff picture GJPfaff  ·  25Comments

Goldname100 picture Goldname100  ·  51Comments

ALfuhrmann picture ALfuhrmann  ·  33Comments

Valouleloup picture Valouleloup  ·  52Comments

RafaelLinux picture RafaelLinux  ·  43Comments