google-research / multinerf

A Code Release for Mip-NeRF 360, Ref-NeRF, and RawNeRF
Apache License 2.0
3.57k stars 338 forks source link

Building MultiNeRF on Apple silicon (M1) #79

Open umop opened 1 year ago

umop commented 1 year ago

I followed the instructions in the README.md, but there was a problem when running unit tests with the Jax installation which appears to be due to the installed Jax not including builds for Apple (M1) silicon which my workstation is running on. I found https://github.com/google/jax/issues/5501 which suggested reinstalling Python using the latest arm64 version of Miniforge (not Miniconda) then pip install jaxlib jax which I did. However, when I go through the installation steps in README.md again, I get an error while installing tensorboard during the following step:

pip install -r requirements.txt

...
Collecting tensorboard
  Using cached tensorboard-2.11.0-py3-none-any.whl (6.0 MB)
ERROR: Ignored the following versions that require a different python version: 1.21.2 Requires-Python >=3.7,<3.11; 1.21.3 Requires-Python >=3.7,<3.11; 1.21.4 Requires-Python >=3.7,<3.11; 1.21.5 Requires-Python >=3.7,<3.11; 1.21.6 Requires-Python >=3.7,<3.11
ERROR: Could not find a version that satisfies the requirement tensorflow (from versions: none)
ERROR: No matching distribution found for tensorflow

I'm fairly new to python development in general. Is there a better overall approach for building MultiNeRF on the M1 or is this not supported hardware?

AuthorityWang commented 1 year ago

It seems that your python version does not meet the demands, maybe you should upgrade your python that >=3.7 and <3.11. You need also install tensorflow with corresponding version for Apple M1, you can search for tutorials for installing tensorflow on M1. Besides, all the libs in this project can run on M1, but there may still have problems with this project.