ashawkey / stable-dreamfusion

Text-to-3D & Image-to-3D & Mesh Exportation with NeRF + Diffusion.
Apache License 2.0
8k stars 710 forks source link

Detailed Windows Install Guide? #42

Open y0himba opened 1 year ago

y0himba commented 1 year ago

Hello. I'm an old fart trying to learn new tricks. I have the CUDA toolkit installed, also have Miniconda, and Python 3.10. I have spent 3 hours switching between Conda and pip trying to get this and all it's dependencies up and running, to no avail.

Would some galaxy brain who has this running under Windows 10 be willing to write a detailed guide, with screenshots, for us lowly end users? Maybe even a FAQ with common install issues under Windows.

I am DYING to create 3D objects, especially using SD! I have several flavors of SD UIs up and running, and the ability to create with text...AMAZING.

I want to be able to mess with text2video, and create 3 objects. I have plans people, plans.

Thank you to anyone who can do this, and I will help in any way I can.

Also, are there discussions? A Discord?

zamero commented 1 year ago

Same issue here. When I run Main it says CUDA is missing

pureexe commented 1 year ago

Please see this comment https://github.com/ashawkey/stable-dreamfusion/issues/38#issuecomment-1279895776

y0himba commented 1 year ago

Please see this comment #38 (comment)

I got a bit farther using this method, thank you. However, setup still fails on NvDiffRast, the DLL it is looking for is there. image

(base) PS C:\stable-diffusion\stable-dreamfusion> pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
Collecting git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
  Cloning https://github.com/NVlabs/tiny-cuda-nn/ to c:\users\y0himba\appdata\local\temp\pip-req-build-9zt_j75u
  Running command git clone --filter=blob:none --quiet https://github.com/NVlabs/tiny-cuda-nn/ 'C:\Users\y0himba\AppData\Local\Temp\pip-req-build-9zt_j75u'
  Resolved https://github.com/NVlabs/tiny-cuda-nn/ to commit 90af227bfc96549edd96937166f63639e46ba8aa
  Running command git submodule update --init --recursive -q
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [8 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "C:\Users\y0himba\AppData\Local\Temp\pip-req-build-9zt_j75u\bindings/torch\setup.py", line 3, in <module>
          import torch
        File "C:\ProgramData\Miniconda3\lib\site-packages\torch\__init__.py", line 129, in <module>
          raise err
      OSError: [WinError 127] The specified procedure could not be found. Error loading "C:\ProgramData\Miniconda3\lib\site-packages\torch\lib\caffe2_detectron_ops_gpu.dll" or one of its dependencies.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
bitRAKE commented 1 year ago

I've gotten to installing the extensions. They don't want to build with MS Tools, and I haven't quite discovered why.

Unfortunately, the default installation does not install the CUDA version of torch - that is the first problem. My current think on this (because many setups have this problem) is that there is no CUDA 11.8 version of torch and it falls back to CPU only version -- rather than error. You can fix this problem with:

pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 -f https://download.pytorch.org/whl/torch_stable.html

... and you can verify install with: pip list

The following executes without issue:

pip install -r requirements.txt
pip install git+https://github.com/NVlabs/nvdiffrast/
pip install git+https://github.com/openai/CLIP.git

Next we need to configure the environment to build https://github.com/NVlabs/tiny-cuda-nn:

for /f "usebackq delims=#" %a in (`"%programfiles(x86)%\Microsoft Visual Studio\Installer\vswhere" -latest -property installationPath`) do "%a\Common7\Tools\VsDevCmd.bat"
set DISTUTILS_USE_SDK=1
pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch

Assuming you have VS2012+, this should not error.

... and we reach the stopping point, none of these will build:

pip install ./raymarching
pip install ./shencoder
pip install ./freqencoder
pip install ./gridencoder

I'm thinking some compiler switches are missing, and trying to resolve ...

y0himba commented 1 year ago

I've tried the command above and got the following:

C:\stable-diffusion\stable-dreamfusion>pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 -f https://download.pytorch.org/whl/torch_stable.html
Looking in links: https://download.pytorch.org/whl/torch_stable.html
ERROR: Could not find a version that satisfies the requirement torch==1.12.1+cu116 (from versions: none)
ERROR: No matching distribution found for torch==1.12.1+cu116

I've gotten to installing the extensions. They don't want to build with MS Tools, and I haven't quite discovered why.

Unfortunately, the default installation does not install the CUDA version of torch - that is the first problem. My current think on this (because many setups have this problem) is that there is no CUDA 11.8 version of torch and it falls back to CPU only version -- rather than error. You can fix this problem with:

pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 -f https://download.pytorch.org/whl/torch_stable.html

... and you can verify install with: pip list

The following executes without issue:

pip install -r requirements.txt
pip install git+https://github.com/NVlabs/nvdiffrast/
pip install git+https://github.com/openai/CLIP.git

Next we need to configure the environment to build https://github.com/NVlabs/tiny-cuda-nn:

for /f "usebackq delims=#" %a in (`"%programfiles(x86)%\Microsoft Visual Studio\Installer\vswhere" -latest -property installationPath`) do "%a\Common7\Tools\VsDevCmd.bat"
set DISTUTILS_USE_SDK=1
pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch

Assuming you have VS2012+, this should not error.

... and we reach the stopping point, none of these will build:

pip install ./raymarching
pip install ./shencoder
pip install ./freqencoder
pip install ./gridencoder

I'm thinking some compiler switches are missing, and trying to resolve ...

bitRAKE commented 1 year ago

I'm thinking you are using an old version of pip; because if mine errors it will show a list of allowed versions. What does pip list show? I can browse to there and see the version: https://download.pytorch.org/whl/torch_stable.html

Version (none) is like you are blocked for some reason.

y0himba commented 1 year ago
C:\stable-diffusion\stable-dreamfusion>pip list
Package                Version
---------------------- -----------
aiodns                 3.0.0
aiohttp                3.8.3
aiohttp-socks          0.7.1
aiosignal              1.2.0
antlr4-python3-runtime 4.8
arabic-reshaper        2.1.4
asn1crypto             1.5.1
asttokens              2.0.8
async-timeout          4.0.2
attrs                  22.1.0
backcall               0.2.0
beautifulsoup4         4.10.0
certifi                2022.9.24
cffi                   1.15.1
chardet                5.0.0
charset-normalizer     2.1.1
click                  8.1.3
cloudscraper           1.2.64
colorama               0.4.5
commonmark             0.9.1
contourpy              1.0.5
cryptography           38.0.1
cssselect2             0.7.0
cycler                 0.11.0
debugpy                1.6.3
decorator              4.4.2
distlib                0.3.6
entrypoints            0.4
executing              1.1.0
filelock               3.8.0
Flask                  2.2.2
fonttools              4.37.4
frozenlist             1.3.1
future                 0.18.2
future-annotations     1.0.0
html5lib               1.1
huggingface-hub        0.9.1
idna                   3.4
imageio                2.9.0
imageio-ffmpeg         0.4.2
ipykernel              6.16.0
ipython                8.5.0
itsdangerous           2.1.2
jedi                   0.18.1
Jinja2                 3.1.2
jsonpickle             2.2.0
jupyter_client         7.3.5
jupyter-core           4.11.1
kiwisolver             1.4.4
lxml                   4.9.1
maigret                0.4.4
MarkupSafe             2.1.1
matplotlib             3.6.0
matplotlib-inline      0.1.6
mock                   4.0.3
multidict              6.0.2
nest-asyncio           1.5.6
networkx               2.5.1
numpy                  1.23.3
omegaconf              2.1.1
opencv-python          4.6.0.66
oscrypto               1.3.0
packaging              21.3
pandas                 1.5.0
parso                  0.8.3
pew                    1.2.0
pickleshare            0.7.5
Pillow                 9.2.0
pip                    22.3
platformdirs           2.5.2
prompt-toolkit         3.0.31
protobuf               4.21.6
psutil                 5.9.2
pudb                   2019.2
pure-eval              0.2.2
pycares                4.2.2
pycountry              22.3.5
pycparser              2.21
Pygments               2.13.0
pyHanko                0.14.0
pyhanko-certvalidator  0.19.5
PyMCubes               0.1.2
pyparsing              3.0.9
PyPDF2                 2.10.8
PyPDF3                 1.0.6
PyQt5                  5.15.7
PyQt5-Qt5              5.15.2
PyQt5-sip              12.11.0
PySocks                1.7.1
python-bidi            0.4.2
python-dateutil        2.8.2
python-socks           2.0.3
pytz                   2022.4
pytz-deprecation-shim  0.1.0.post0
pyvis                  0.2.1
pywin32                304
PyYAML                 6.0
pyzmq                  24.0.1
qrcode                 7.3.1
regex                  2022.9.13
reportlab              3.6.11
requests               2.28.1
requests-futures       1.0.0
requests-toolbelt      0.9.1
rich                   12.6.0
setuptools             63.2.0
shellingham            1.5.0
six                    1.16.0
socid-extractor        0.0.23
soupsieve              2.3.2.post1
srt                    3.5.2
stack-data             0.5.1
stem                   1.8.0
svglib                 1.4.1
tinycss2               1.1.1
tokenize-rt            5.0.0
tokenizers             0.12.1
tornado                6.2
torrequest             0.1.0
tqdm                   4.64.1
traitlets              5.4.0
transformers           4.22.2
typing_extensions      4.3.0
tzdata                 2022.4
tzlocal                4.2
uritools               4.0.0
urllib3                1.26.12
urwid                  2.1.2
virtualenv             20.16.5
virtualenv-clone       0.5.7
vosk                   0.3.44
wcwidth                0.2.5
webencodings           0.5.1
websockets             10.3
Werkzeug               2.2.2
xhtml2pdf              0.2.8
XMind                  1.2.0
yarl                   1.8.1
y0himba commented 1 year ago

If just trying to install 'torch':

C:\stable-diffusion\stable-dreamfusion>pip install torch
ERROR: Could not find a version that satisfies the requirement torch (from versions: none)
ERROR: No matching distribution found for torch
bitRAKE commented 1 year ago

Obviously, your local setup is garbage. How about we ignore that and create a new virtual environment for this repo?

rmdir /S venv
python -m venv venv
.\venv\scripts\activate

(rmdir /S venv might fail if there isn't an existing environment directory - that's okay.) Now start at the beginning in this new environment.

y0himba commented 1 year ago

Obviously, your local setup is garbage. How about we ignore that and create a new virtual environment for this repo?

rmdir /S venv
python -m venv venv
.\venv\scripts\activate

(rmdir /S venv might fail if there isn't an existing environment directory - that's okay.) Now start at the beginning in this new environment.

I have removed the environment, and the entire repo folder several times, and started fresh. I've checked my PATH statement, made sure that the Conda folder is in the path and accessible. I have a few other environments for programs that utilize SD, and they are all working.

I just removed Miniconda and installed Anaconda3. I am removing the folder and starting from scratch again.

y0himba commented 1 year ago
pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 -f https://download.pytorch.org/whl/torch_stable.html

Here is what I see on Pytorch.org:

image

y0himba commented 1 year ago

Now I am getting an SSL error when even install .whl or tar.bz2 files locally:

PS C:\stable-diffusion\stable-dreamfusion> conda install "E:\Documents\Downloads\torch-1.12.0+cu116-cp39-cp39-win_amd64.whl"
Collecting package metadata (current_repodata.json): failed

CondaSSLError: OpenSSL appears to be unavailable on this machine. OpenSSL is required to
download and install packages.

Exception: HTTPSConnectionPool(host='repo.anaconda.com', port=443): Max retries exceeded with url: /pkgs/main/win-64/current_repodata.json (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available."))

OpenSSL for Windows is installed. If I try to install OpenSSL using Conda or pip I can't, because I get the error above.

This is on a fresh start of trying to install.

y0himba commented 1 year ago

Got all the way to installing the tcnn backbone, got this error. CUDA is installed and in the PATH.

PS C:\stable-diffusion\stable-dreamfusion> pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
Collecting git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
  Cloning https://github.com/NVlabs/tiny-cuda-nn/ to c:\users\y0himba\appdata\local\temp\pip-req-build-38pfyirc
  Running command git clone --filter=blob:none --quiet https://github.com/NVlabs/tiny-cuda-nn/ 'C:\Users\y0himba\AppData\Local\Temp\pip-req-build-38pfyirc'
  Resolved https://github.com/NVlabs/tiny-cuda-nn/ to commit 90af227bfc96549edd96937166f63639e46ba8aa
  Running command git submodule update --init --recursive -q
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [8 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "C:\Users\y0himba\AppData\Local\Temp\pip-req-build-38pfyirc\bindings/torch\setup.py", line 30, in <module>
          raise EnvironmentError("Unknown compute capability. Specify the target compute capabilities in the TCNN_CUDA_ARCHITECTURES environment variable or install PyTorch with the CUDA backend to detect it automatically.")
      OSError: Unknown compute capability. Specify the target compute capabilities in the TCNN_CUDA_ARCHITECTURES environment variable or install PyTorch with the CUDA backend to detect it automatically.
      No CUDA runtime is found, using CUDA_HOME='C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8'
      Building PyTorch extension for tiny-cuda-nn version 1.6
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
bitRAKE commented 1 year ago

Well, you don't need to use venv if you're using conda, but I never could build tiny-cuda-nn with conda. I abandoned that approach. You could try manually specifying with set TORCH_CUDA_ARCH_LIST=#.# (using your compute capability for #.#), but that only errored later for me.

Are you seeing the CUDA version of torch in your environment?

...
tokenizers         0.13.1
torch              1.12.1+cu116
torch-ema          0.3
torchvision        0.13.1+cu116
tqdm               4.64.1
...
y0himba commented 1 year ago

Well, you don't need to use venv if you're using conda, but I never could build tiny-cuda-nn with conda. I abandoned that approach. You could try manually specifying with set TORCH_CUDA_ARCH_LIST=#.# (using your compute capability for #.#), but that only errored later for me.

Are you seeing the CUDA version of torch in your environment?

...
tokenizers         0.13.1
torch              1.12.1+cu116
torch-ema          0.3
torchvision        0.13.1+cu116
tqdm               4.64.1
...

No. I think it will need to be installed separately. I installed requirements.txt and I guess it isn't in there.

Are pip and conda install interchangeable? If I use pip install XXXX will that install into my Anaconda folder? Or do I need to use Conda install? image

y0himba commented 1 year ago

Here's a new one. Text flood incoming. Sorry.

C:\stable-diffusion\stable-dreamfusion>set DISTUTILS_USE_SDK=1

C:\stable-diffusion\stable-dreamfusion>pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
Collecting git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
  Cloning https://github.com/NVlabs/tiny-cuda-nn/ to c:\users\y0himba\appdata\local\temp\pip-req-build-c8j17y5h
  Running command git clone --filter=blob:none --quiet https://github.com/NVlabs/tiny-cuda-nn/ 'C:\Users\y0himba\AppData\Local\Temp\pip-req-build-c8j17y5h'
  Resolved https://github.com/NVlabs/tiny-cuda-nn/ to commit 90af227bfc96549edd96937166f63639e46ba8aa
  Running command git submodule update --init --recursive -q
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: tinycudann
  Building wheel for tinycudann (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [71 lines of output]
      No CUDA runtime is found, using CUDA_HOME='C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8'
      Building PyTorch extension for tiny-cuda-nn version 1.6
      Obtained compute capabilities [86] from environment variable TCNN_CUDA_ARCHITECTURES
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-cpython-39
      creating build\lib.win-amd64-cpython-39\tinycudann
      copying tinycudann\modules.py -> build\lib.win-amd64-cpython-39\tinycudann
      copying tinycudann\__init__.py -> build\lib.win-amd64-cpython-39\tinycudann
      running egg_info
      creating tinycudann.egg-info
      writing tinycudann.egg-info\PKG-INFO
      writing dependency_links to tinycudann.egg-info\dependency_links.txt
      writing top-level names to tinycudann.egg-info\top_level.txt
      writing manifest file 'tinycudann.egg-info\SOURCES.txt'
      reading manifest file 'tinycudann.egg-info\SOURCES.txt'
      writing manifest file 'tinycudann.egg-info\SOURCES.txt'
      copying tinycudann\bindings.cpp -> build\lib.win-amd64-cpython-39\tinycudann
      running build_ext
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "C:\Users\y0himba\AppData\Local\Temp\pip-req-build-c8j17y5h\bindings/torch\setup.py", line 126, in <module>
          setup(
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\__init__.py", line 87, in setup
          return distutils.core.setup(**attrs)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\core.py", line 185, in setup
          return run_commands(dist)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\core.py", line 201, in run_commands
          dist.run_commands()
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 973, in run_commands
          self.run_command(cmd)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\Anaconda3\lib\site-packages\wheel\bdist_wheel.py", line 299, in run
          self.run_command('build')
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\cmd.py", line 319, in run_command
          self.distribution.run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\command\build.py", line 24, in run
          super().run()
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\command\build.py", line 132, in run
          self.run_command(cmd_name)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\cmd.py", line 319, in run_command
          self.distribution.run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\command\build_ext.py", line 79, in run
          _build_ext.run(self)
        File "C:\ProgramData\Anaconda3\lib\site-packages\Cython\Distutils\old_build_ext.py", line 186, in run
          _build_ext.build_ext.run(self)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 346, in run
          self.build_extensions()
        File "C:\ProgramData\Anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 434, in build_extensions
          self._check_cuda_version(compiler_name, compiler_version)
        File "C:\ProgramData\Anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 808, in _check_cuda_version
          torch_cuda_version = packaging.version.parse(torch.version.cuda)
        File "C:\ProgramData\Anaconda3\lib\site-packages\pkg_resources\_vendor\packaging\version.py", line 49, in parse
          return Version(version)
        File "C:\ProgramData\Anaconda3\lib\site-packages\pkg_resources\_vendor\packaging\version.py", line 264, in __init__
          match = self._regex.search(version)
      TypeError: expected string or bytes-like object
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for tinycudann
  Running setup.py clean for tinycudann
Failed to build tinycudann
Installing collected packages: tinycudann
  Running setup.py install for tinycudann ... error
  error: subprocess-exited-with-error

  × Running setup.py install for tinycudann did not run successfully.
  │ exit code: 1
  ╰─> [67 lines of output]
      No CUDA runtime is found, using CUDA_HOME='C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8'
      Building PyTorch extension for tiny-cuda-nn version 1.6
      Obtained compute capabilities [86] from environment variable TCNN_CUDA_ARCHITECTURES
      running install
      C:\ProgramData\Anaconda3\lib\site-packages\setuptools\command\install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
        warnings.warn(
      running build
      running build_py
      running egg_info
      writing tinycudann.egg-info\PKG-INFO
      writing dependency_links to tinycudann.egg-info\dependency_links.txt
      writing top-level names to tinycudann.egg-info\top_level.txt
      reading manifest file 'tinycudann.egg-info\SOURCES.txt'
      writing manifest file 'tinycudann.egg-info\SOURCES.txt'
      running build_ext
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "C:\Users\y0himba\AppData\Local\Temp\pip-req-build-c8j17y5h\bindings/torch\setup.py", line 126, in <module>
          setup(
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\__init__.py", line 87, in setup
          return distutils.core.setup(**attrs)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\core.py", line 185, in setup
          return run_commands(dist)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\core.py", line 201, in run_commands
          dist.run_commands()
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 973, in run_commands
          self.run_command(cmd)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\command\install.py", line 68, in run
          return orig.install.run(self)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\command\install.py", line 692, in run
          self.run_command('build')
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\cmd.py", line 319, in run_command
          self.distribution.run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\command\build.py", line 24, in run
          super().run()
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\command\build.py", line 132, in run
          self.run_command(cmd_name)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\cmd.py", line 319, in run_command
          self.distribution.run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\command\build_ext.py", line 79, in run
          _build_ext.run(self)
        File "C:\ProgramData\Anaconda3\lib\site-packages\Cython\Distutils\old_build_ext.py", line 186, in run
          _build_ext.build_ext.run(self)
        File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 346, in run
          self.build_extensions()
        File "C:\ProgramData\Anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 434, in build_extensions
          self._check_cuda_version(compiler_name, compiler_version)
        File "C:\ProgramData\Anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 808, in _check_cuda_version
          torch_cuda_version = packaging.version.parse(torch.version.cuda)
        File "C:\ProgramData\Anaconda3\lib\site-packages\pkg_resources\_vendor\packaging\version.py", line 49, in parse
          return Version(version)
        File "C:\ProgramData\Anaconda3\lib\site-packages\pkg_resources\_vendor\packaging\version.py", line 264, in __init__
          match = self._regex.search(version)
      TypeError: expected string or bytes-like object
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> tinycudann
bitRAKE commented 1 year ago

pip only installs into the active environment: venv or conda or local install -- they are all insolated by design.

y0himba commented 1 year ago

I've got it down to installing raymarching, even though I am unable to install tncc. Now I am getting this error. Where can I insert set DISTUTILS_USE_SDK=1 so that I won't need to type it every time?

 UserWarning: It seems that the VC environment is activated but DISTUTILS_USE_SDK is not set.This may lead to multiple activations of the VC env.Please set `DISTUTILS_USE_SDK=1` and try again.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> raymarching
bitRAKE commented 1 year ago

if you were using venv, I'd say to add it to venv\Scripts\activate.bat, but I don't know for conda.

pureexe commented 1 year ago

@y0himba You need to set environment variable in Windows setting. See https://github.com/ashawkey/stable-dreamfusion/issues/38#issuecomment-1285260339

bitRAKE commented 1 year ago

The two errors I'm stuck on are:

D:\_MP\stable-dreamfusion\venv\lib\site-packages\torch\include\pybind11\cast.h(1429): error: too few arguments for template template parameter "Tuple"
          detected during instantiation of class "pybind11::detail::tuple_caster<Tuple, Ts...> [with Tuple=std::pair, Ts=<T1, T2>]"

D:\_MP\stable-dreamfusion\venv\lib\site-packages\torch\include\pybind11\cast.h(1503): error: too few arguments for template template parameter "Tuple"
          detected during instantiation of class "pybind11::detail::tuple_caster<Tuple, Ts...> [with Tuple=std::pair, Ts=<T1, T2>]"

These cause all extension compiles to fail.

CUDA 11.6 SDK, matching pytorch, xformers builds fine, but not this repo.

y0himba commented 1 year ago

I gave up. It doesn't like to be installed on Windows. This is the only Stable Diffusion based tool I can't get to work under a Windows environment.

I really wanted to use it, I have lots of ideas, but when I fix one error, I get another. PATHs are all correct, proper versions are installed, followed the install guide and suggestions here.

Since I am not as knowledgeable as a lot of the folks here I have no idea where to turn next. That's the reason I asked for a detailed install guide.

I've removed and started from scratch several times, spent many hours working through it and trying these suggestions, nothing.

bitRAKE commented 1 year ago

These build systems are more complex than the programming languages, lol.

I'm building the extensions manually. Like the only thing needed to build raymarching is:

nvcc -I%BASE%\torch\include -I%BASE%\torch\include\torch\csrc\api\include --expt-relaxed-constexpr raymarching.cu

... and it builds fine - no problem with my environment.

flobotics commented 1 year ago

i installed anaconda3, opened a "anaconda powershell prompt (anaconda3)" and did the same commands as @pureexe described in his post and it runs.

Only pip commands, no nvcc commands.

You need to change to the directory where you downloaded the git repo in the anaconda powershell prompt.

hope it helps

bitRAKE commented 1 year ago

@flobotics the only way I see that working is if you have build tools on your path for the current user. @pureexe said he was using VS2022 command prompt - that isn't a conda environment.

I have neither the compiler nor python installed on the path by default for global use. So, I can start a Powershell terminal for VS2022 work, and then activate a python environment to access both; and in that configuration the repo doesn't build. So, there is probably some include path ordering problem.

y0himba commented 1 year ago

My paths are all correct. I've installed everything required, and still get errors. Fix one, another pops up. I am dying to use this. We 'newbs' really need help from folks that know what they are doing under Windows. I'm too old to start learning Linux now.

Maybe someone can compile what is needed, or create an all-in-one solution with a batch file to download and run the batch?

I can see this going pretty far and a lot of folks using it, but it's going to be limited without better documentation. I can follow the readme easily, but there are no troubleshooting steps.

I've removed and re-installed everything many times, Anaconda3, VS 2019, 2022, and so forth, and get the same issues every time without fail.

bitRAKE commented 1 year ago

Found the problem. It's a Windows specific compiler error in NVCC: https://github.com/pytorch/pytorch/issues/69460

This should impact almost all projects using torch\pybind11.

Upgrading to CUDA 11.8 solved the two errors I was getting above.

y0himba commented 1 year ago

Already using 11.8

bitRAKE commented 1 year ago

I start with a PowerShell VS2022 command prompt as @pureexe suggested, then I bring my python into the environment. I can check with python --version. I can also check CUDA is in environment with nvcc -V, and git with git --version.

Now we are ready to begin:

git clone https://github.com/ashawkey/stable-dreamfusion.git test_dream
cd test_dream
python -m venv venv
.\venv\scripts\activate

pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 -f https://download.pytorch.org/whl/torch_stable.html
pip install -r requirements.txt
pip install git+https://github.com/NVlabs/nvdiffrast/
pip install git+https://github.com/openai/CLIP.git

$env:DISTUTILS_USE_SDK=1
pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch

pip install ./raymarching
pip install ./shencoder
pip install ./freqencoder
pip install ./gridencoder

I execute each line and nothing errors. That is the complete detailed instructions. I install torch separately just because I'm paranoid - too many projects have installed the wrong version. I don't use conda. I don't think people will create wheels (pre-built executables) for every project - there are just too many combinations.

flobotics commented 1 year ago

perhaps if it all fails for you @y0himba , you could try https://github.com/ashawkey/stable-dreamfusion/tree/main/docker

Dont know if it works, just found it and thought your perhaps interrested

Also an idea, perhaps its because of your GPU version, i use rtx3080 laptop gpu, what do you use ? https://developer.nvidia.com/cuda-gpus and https://gist.github.com/standaloneSA/99788f30466516dbcc00338b36ad5acf

y0himba commented 1 year ago

I use an RTX 3070 in the box I threw together just for Stable Diffusion stuff.

I am not really good with Docker, I have it, and I run a few things in it. I wish I could figure out where Docker stores data locally, like images and the files that the images produce. How would I go about using Docker from the link in your post? It seems like that may be a good idea. When using docker build -t stable-dreamfusion:latest . From the command prompt in the Stable-Dreamfusion directory I get this:

C:\stable-diffusion\stable-dreamfusion>docker build -t stable-dreamfusion:latest .
[+] Building 0.1s (2/2) FINISHED
 => [internal] load build definition from Dockerfile                                                               0.1s
 => => transferring dockerfile: 2B                                                                                 0.0s
 => [internal] load .dockerignore                                                                                  0.1s
 => => transferring context: 2B                                                                                    0.0s
failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount2898549574/Dockerfile: no such file or directory

I have more than enough space and bandwidth to download the full images from the link you posted, but what do I do with them after that?

perhaps if it all fails for you @y0himba , you could try https://github.com/ashawkey/stable-dreamfusion/tree/main/docker

Dont know if it works, just found it and thought your perhaps interrested

Also an idea, perhaps its because of your GPU version, i use rtx3080 laptop gpu, what do you use ? https://developer.nvidia.com/cuda-gpus and https://gist.github.com/standaloneSA/99788f30466516dbcc00338b36ad5acf

y0himba commented 1 year ago

I start with a PowerShell VS2022 command prompt as @pureexe suggested, then I bring my python into the environment. I can check with python --version. I can also check CUDA is in environment with nvcc -V, and git with git --version.

Now we are ready to begin:

git clone https://github.com/ashawkey/stable-dreamfusion.git test_dream
cd test_dream
python -m venv venv
.\venv\scripts\activate

pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 -f https://download.pytorch.org/whl/torch_stable.html
pip install -r requirements.txt
pip install git+https://github.com/NVlabs/nvdiffrast/
pip install git+https://github.com/openai/CLIP.git

$env:DISTUTILS_USE_SDK=1
pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch

pip install ./raymarching
pip install ./shencoder
pip install ./freqencoder
pip install ./gridencoder

I execute each line and nothing errors. That is the complete detailed instructions. I install torch separately just because I'm paranoid - too many projects have installed the wrong version. I don't use conda. I don't think people will create wheels (pre-built executables) for every project - there are just too many combinations.

So I can create a Conda environment based on Python 3.10, then pip everything into that environment?

EDIT: I created a venv and got all the way to pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch which then threw so many errors...1686 lines to be exact. Rather than paste it here, I saved it as a text file. errot.txt

flobotics commented 1 year ago

with anaconda3 i dont create an extra virtual environment, i only open the "anaconda powershell prompt (anaconda3)" , automatically using the base environement, and then i type the commands in the dreamfusion folder.

y0himba commented 1 year ago

with anaconda3 i dont create an extra virtual environment, i only open the "anaconda powershell prompt (anaconda3)" , automatically using the base environement, and then i type the commands in the dreamfusion folder.

Ran the anaconda3 powershell prompt as above. FRESH clone of the repo. Made it to installing raymarching, then:

(base) C:\stable-diffusion\stable-dreamfusion>pip install ./raymarching
Processing c:\stable-diffusion\stable-dreamfusion\raymarching
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: raymarching
  Building wheel for raymarching (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [92 lines of output]
      running bdist_wheel
      running build
      running build_ext
      C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py:813: UserWarning: The detected CUDA version (11.8) has a minor version mismatch with the version that was used to compile PyTorch (11.6). Most likely this shouldn't be a problem.
        warnings.warn(CUDA_MISMATCH_WARN.format(cuda_str_version, torch.version.cuda))
      building '_raymarching' extension
      Emitting ninja build file C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\build.ninja...
      Compiling objects...
      Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
      [1/2] cl /showIncludes /nologo /O2 /W3 /GL /DNDEBUG /MD /MD /wd4819 /wd4251 /wd4244 /wd4267 /wd4275 /wd4018 /wd4190 /EHsc -IC:\ProgramData\anaconda3\lib\site-packages\torch\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\TH -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include" -IC:\ProgramData\anaconda3\include -IC:\ProgramData\anaconda3\Include -c C:\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.cpp /FoC:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.obj /O2 /std:c++17 -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_raymarching -D_GLIBCXX_USE_CXX11_ABI=0
      FAILED: C:/stable-diffusion/stable-dreamfusion/raymarching/build/temp.win-amd64-cpython-39/Release/stable-diffusion/stable-dreamfusion/raymarching/src/bindings.obj
      cl /showIncludes /nologo /O2 /W3 /GL /DNDEBUG /MD /MD /wd4819 /wd4251 /wd4244 /wd4267 /wd4275 /wd4018 /wd4190 /EHsc -IC:\ProgramData\anaconda3\lib\site-packages\torch\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\TH -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include" -IC:\ProgramData\anaconda3\include -IC:\ProgramData\anaconda3\Include -c C:\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.cpp /FoC:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.obj /O2 /std:c++17 -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_raymarching -D_GLIBCXX_USE_CXX11_ABI=0
      C:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include\torch/cuda.h(5): fatal error C1083: Cannot open include file: 'cstdint': No such file or directory
      [2/2] C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin\nvcc --generate-dependencies-with-compile --dependency-output C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.obj.d --use-local-env -Xcompiler /MD -Xcompiler /wd4819 -Xcompiler /wd4251 -Xcompiler /wd4244 -Xcompiler /wd4267 -Xcompiler /wd4275 -Xcompiler /wd4018 -Xcompiler /wd4190 -Xcompiler /EHsc -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcudafe --diag_suppress=field_without_dll_interface -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -IC:\ProgramData\anaconda3\lib\site-packages\torch\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\TH -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include" -IC:\ProgramData\anaconda3\include -IC:\ProgramData\anaconda3\Include -c C:\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.cu -o C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.obj -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -O3 -std=c++14 -U__CUDA_NO_HALF_OPERATORS__ -U__CUDA_NO_HALF_CONVERSIONS__ -U__CUDA_NO_HALF2_OPERATORS__ -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_raymarching -D_GLIBCXX_USE_CXX11_ABI=0
      FAILED: C:/stable-diffusion/stable-dreamfusion/raymarching/build/temp.win-amd64-cpython-39/Release/stable-diffusion/stable-dreamfusion/raymarching/src/raymarching.obj
      C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin\nvcc --generate-dependencies-with-compile --dependency-output C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.obj.d --use-local-env -Xcompiler /MD -Xcompiler /wd4819 -Xcompiler /wd4251 -Xcompiler /wd4244 -Xcompiler /wd4267 -Xcompiler /wd4275 -Xcompiler /wd4018 -Xcompiler /wd4190 -Xcompiler /EHsc -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcudafe --diag_suppress=field_without_dll_interface -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -IC:\ProgramData\anaconda3\lib\site-packages\torch\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\TH -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include" -IC:\ProgramData\anaconda3\include -IC:\ProgramData\anaconda3\Include -c C:\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.cu -o C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.obj -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -O3 -std=c++14 -U__CUDA_NO_HALF_OPERATORS__ -U__CUDA_NO_HALF_CONVERSIONS__ -U__CUDA_NO_HALF2_OPERATORS__ -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_raymarching -D_GLIBCXX_USE_CXX11_ABI=0
      cl : Command line warning D9025 : overriding '/D__CUDA_NO_HALF_OPERATORS__' with '/U__CUDA_NO_HALF_OPERATORS__'
      cl : Command line warning D9025 : overriding '/D__CUDA_NO_HALF_CONVERSIONS__' with '/U__CUDA_NO_HALF_CONVERSIONS__'
      cl : Command line warning D9025 : overriding '/D__CUDA_NO_HALF2_OPERATORS__' with '/U__CUDA_NO_HALF2_OPERATORS__'
      raymarching.cu
      C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include\crt/host_config.h(231): fatal error C1083: Cannot open include file: 'crtdefs.h': No such file or directory
      raymarching.cu
      ninja: build stopped: subcommand failed.
      Traceback (most recent call last):
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 1808, in _run_ninja_build
          subprocess.run(
        File "C:\ProgramData\anaconda3\lib\subprocess.py", line 528, in run
          raise CalledProcessError(retcode, process.args,
      subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

      The above exception was the direct cause of the following exception:

      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "C:\stable-diffusion\stable-dreamfusion\raymarching\setup.py", line 44, in <module>
          setup(
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\__init__.py", line 87, in setup
          return distutils.core.setup(**attrs)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\core.py", line 185, in setup
          return run_commands(dist)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\core.py", line 201, in run_commands
          dist.run_commands()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 973, in run_commands
          self.run_command(cmd)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\anaconda3\lib\site-packages\wheel\bdist_wheel.py", line 299, in run
          self.run_command('build')
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\cmd.py", line 319, in run_command
          self.distribution.run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\command\build.py", line 24, in run
          super().run()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build.py", line 132, in run
          self.run_command(cmd_name)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\cmd.py", line 319, in run_command
          self.distribution.run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\command\build_ext.py", line 79, in run
          _build_ext.run(self)
        File "C:\ProgramData\anaconda3\lib\site-packages\Cython\Distutils\old_build_ext.py", line 186, in run
          _build_ext.build_ext.run(self)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 346, in run
          self.build_extensions()
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 765, in build_extensions
          build_ext.build_extensions(self)
        File "C:\ProgramData\anaconda3\lib\site-packages\Cython\Distutils\old_build_ext.py", line 195, in build_extensions
          _build_ext.build_ext.build_extensions(self)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 466, in build_extensions
          self._build_extensions_serial()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 492, in _build_extensions_serial
          self.build_extension(ext)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\command\build_ext.py", line 202, in build_extension
          _build_ext.build_extension(self, ext)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 547, in build_extension
          objects = self.compiler.compile(
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 738, in win_wrap_ninja_compile
          _write_ninja_file_and_compile_objects(
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 1487, in _write_ninja_file_and_compile_objects
          _run_ninja_build(
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 1824, in _run_ninja_build
          raise RuntimeError(message) from e
      RuntimeError: Error compiling objects for extension
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for raymarching
  Running setup.py clean for raymarching
Failed to build raymarching
Installing collected packages: raymarching
  Running setup.py install for raymarching ... error
  error: subprocess-exited-with-error

  × Running setup.py install for raymarching did not run successfully.
  │ exit code: 1
  ╰─> [102 lines of output]
      running install
      C:\ProgramData\anaconda3\lib\site-packages\setuptools\command\install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
        warnings.warn(
      running build
      running build_ext
      C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py:813: UserWarning: The detected CUDA version (11.8) has a minor version mismatch with the version that was used to compile PyTorch (11.6). Most likely this shouldn't be a problem.
        warnings.warn(CUDA_MISMATCH_WARN.format(cuda_str_version, torch.version.cuda))
      building '_raymarching' extension
      creating C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39
      creating C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release
      creating C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion
      creating C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion
      creating C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching
      creating C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src
      Emitting ninja build file C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\build.ninja...
      Compiling objects...
      Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
      [1/2] cl /showIncludes /nologo /O2 /W3 /GL /DNDEBUG /MD /MD /wd4819 /wd4251 /wd4244 /wd4267 /wd4275 /wd4018 /wd4190 /EHsc -IC:\ProgramData\anaconda3\lib\site-packages\torch\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\TH -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include" -IC:\ProgramData\anaconda3\include -IC:\ProgramData\anaconda3\Include -c C:\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.cpp /FoC:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.obj /O2 /std:c++17 -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_raymarching -D_GLIBCXX_USE_CXX11_ABI=0
      FAILED: C:/stable-diffusion/stable-dreamfusion/raymarching/build/temp.win-amd64-cpython-39/Release/stable-diffusion/stable-dreamfusion/raymarching/src/bindings.obj
      cl /showIncludes /nologo /O2 /W3 /GL /DNDEBUG /MD /MD /wd4819 /wd4251 /wd4244 /wd4267 /wd4275 /wd4018 /wd4190 /EHsc -IC:\ProgramData\anaconda3\lib\site-packages\torch\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\TH -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include" -IC:\ProgramData\anaconda3\include -IC:\ProgramData\anaconda3\Include -c C:\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.cpp /FoC:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.obj /O2 /std:c++17 -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_raymarching -D_GLIBCXX_USE_CXX11_ABI=0
      C:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include\torch/cuda.h(5): fatal error C1083: Cannot open include file: 'cstdint': No such file or directory
      [2/2] C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin\nvcc --generate-dependencies-with-compile --dependency-output C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.obj.d --use-local-env -Xcompiler /MD -Xcompiler /wd4819 -Xcompiler /wd4251 -Xcompiler /wd4244 -Xcompiler /wd4267 -Xcompiler /wd4275 -Xcompiler /wd4018 -Xcompiler /wd4190 -Xcompiler /EHsc -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcudafe --diag_suppress=field_without_dll_interface -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -IC:\ProgramData\anaconda3\lib\site-packages\torch\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\TH -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include" -IC:\ProgramData\anaconda3\include -IC:\ProgramData\anaconda3\Include -c C:\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.cu -o C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.obj -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -O3 -std=c++14 -U__CUDA_NO_HALF_OPERATORS__ -U__CUDA_NO_HALF_CONVERSIONS__ -U__CUDA_NO_HALF2_OPERATORS__ -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_raymarching -D_GLIBCXX_USE_CXX11_ABI=0
      FAILED: C:/stable-diffusion/stable-dreamfusion/raymarching/build/temp.win-amd64-cpython-39/Release/stable-diffusion/stable-dreamfusion/raymarching/src/raymarching.obj
      C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin\nvcc --generate-dependencies-with-compile --dependency-output C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.obj.d --use-local-env -Xcompiler /MD -Xcompiler /wd4819 -Xcompiler /wd4251 -Xcompiler /wd4244 -Xcompiler /wd4267 -Xcompiler /wd4275 -Xcompiler /wd4018 -Xcompiler /wd4190 -Xcompiler /EHsc -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcudafe --diag_suppress=field_without_dll_interface -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -IC:\ProgramData\anaconda3\lib\site-packages\torch\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\TH -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include" -IC:\ProgramData\anaconda3\include -IC:\ProgramData\anaconda3\Include -c C:\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.cu -o C:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\raymarching.obj -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -O3 -std=c++14 -U__CUDA_NO_HALF_OPERATORS__ -U__CUDA_NO_HALF_CONVERSIONS__ -U__CUDA_NO_HALF2_OPERATORS__ -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_raymarching -D_GLIBCXX_USE_CXX11_ABI=0
      cl : Command line warning D9025 : overriding '/D__CUDA_NO_HALF_OPERATORS__' with '/U__CUDA_NO_HALF_OPERATORS__'
      cl : Command line warning D9025 : overriding '/D__CUDA_NO_HALF_CONVERSIONS__' with '/U__CUDA_NO_HALF_CONVERSIONS__'
      cl : Command line warning D9025 : overriding '/D__CUDA_NO_HALF2_OPERATORS__' with '/U__CUDA_NO_HALF2_OPERATORS__'
      raymarching.cu
      C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include\crt/host_config.h(231): fatal error C1083: Cannot open include file: 'crtdefs.h': No such file or directory
      raymarching.cu
      ninja: build stopped: subcommand failed.
      Traceback (most recent call last):
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 1808, in _run_ninja_build
          subprocess.run(
        File "C:\ProgramData\anaconda3\lib\subprocess.py", line 528, in run
          raise CalledProcessError(retcode, process.args,
      subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

      The above exception was the direct cause of the following exception:

      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "C:\stable-diffusion\stable-dreamfusion\raymarching\setup.py", line 44, in <module>
          setup(
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\__init__.py", line 87, in setup
          return distutils.core.setup(**attrs)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\core.py", line 185, in setup
          return run_commands(dist)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\core.py", line 201, in run_commands
          dist.run_commands()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 973, in run_commands
          self.run_command(cmd)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\command\install.py", line 68, in run
          return orig.install.run(self)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\install.py", line 692, in run
          self.run_command('build')
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\cmd.py", line 319, in run_command
          self.distribution.run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\command\build.py", line 24, in run
          super().run()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build.py", line 132, in run
          self.run_command(cmd_name)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\cmd.py", line 319, in run_command
          self.distribution.run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\dist.py", line 1217, in run_command
          super().run_command(command)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\dist.py", line 992, in run_command
          cmd_obj.run()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\command\build_ext.py", line 79, in run
          _build_ext.run(self)
        File "C:\ProgramData\anaconda3\lib\site-packages\Cython\Distutils\old_build_ext.py", line 186, in run
          _build_ext.build_ext.run(self)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 346, in run
          self.build_extensions()
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 765, in build_extensions
          build_ext.build_extensions(self)
        File "C:\ProgramData\anaconda3\lib\site-packages\Cython\Distutils\old_build_ext.py", line 195, in build_extensions
          _build_ext.build_ext.build_extensions(self)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 466, in build_extensions
          self._build_extensions_serial()
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 492, in _build_extensions_serial
          self.build_extension(ext)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\command\build_ext.py", line 202, in build_extension
          _build_ext.build_extension(self, ext)
        File "C:\ProgramData\anaconda3\lib\site-packages\setuptools\_distutils\command\build_ext.py", line 547, in build_extension
          objects = self.compiler.compile(
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 738, in win_wrap_ninja_compile
          _write_ninja_file_and_compile_objects(
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 1487, in _write_ninja_file_and_compile_objects
          _run_ninja_build(
        File "C:\ProgramData\anaconda3\lib\site-packages\torch\utils\cpp_extension.py", line 1824, in _run_ninja_build
          raise RuntimeError(message) from e
      RuntimeError: Error compiling objects for extension
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> raymarching

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.

(base) C:\stable-diffusion\stable-dreamfusion>
bitRAKE commented 1 year ago

The actual compiler error is just this one line:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include\crt/host_config.h(231): fatal error C1083: Cannot open include file: 'crtdefs.h': No such file or directory

Can't find file crtdefs.h.

This is a basic include file that should be part of Visual Studio installation. Looking at the compiler command lines, it's clear there is no detection of standard include directories for compiler:

cl /showIncludes /nologo /O2 /W3 /GL /DNDEBUG /MD /MD /wd4819 /wd4251 /wd4244 /wd4267 /wd4275 /wd4018
 /wd4190 /EHsc
 -IC:\ProgramData\anaconda3\lib\site-packages\torch\include
 -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\torch\csrc\api\include
 -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\TH
 -IC:\ProgramData\anaconda3\lib\site-packages\torch\include\THC
 "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\include"
 -IC:\ProgramData\anaconda3\include -IC:\ProgramData\anaconda3\Include
 -c C:\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.cpp
 /FoC:\stable-diffusion\stable-dreamfusion\raymarching\build\temp.win-amd64-cpython-39\Release\stable-diffusion\stable-dreamfusion\raymarching\src\bindings.obj
 /O2 /std:c++17
 -DTORCH_API_INCLUDE_EXTENSION_H
 -DTORCH_EXTENSION_NAME=_raymarching
 -D_GLIBCXX_USE_CXX11_ABI=0

So, you'll need to fix your compiler installation prior to completing build.

y0himba commented 1 year ago

Thank you! Now we're getting somewhere. I use MS Visual Studio 2019. How do I go about fixing this error? Where would the files normally be that I need? I can try to locate them, and if not, then I can replace them.

bitRAKE commented 1 year ago

The Visual Studio include directories normally look something like:

 "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.33.31629\include"
 "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.33.31629\ATLMFC\include"
 "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include"
 "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt"
 "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um"
 "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared"
 "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt"
 "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt"
 "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um"

The following command should initialize the environment for development:

for /f "usebackq delims=#" %a in (`"%programfiles(x86)%\Microsoft Visual Studio\Installer\vswhere" -latest -property installationPath`) do "%a\Common7\Tools\VsDevCmd.bat"

**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.3.6
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************

... and we check it by looking at the INCLUDE environment variable. From a command terminal we do that with echo %INCLUDE% but from PowerShell we can just dir env: and look for INCLUDE. Those should be the paths detected by ninja, when it creates the build scripts.

(Note: I'm on my bleeding edge boot. So, the version numbers will probably be different in the above paths.)

y0himba commented 1 year ago

Using the command above I get:

 C:\WINDOWS\system32>for /f "usebackq delims=#" %a in (`"%programfiles(x86)%\Microsoft Visual Studio\Installer\vswhere" -latest -property installationPath`) do "%a\Common7\Tools\VsDevCmd.bat"

C:\WINDOWS\system32>"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\Tools\VsDevCmd.bat"
**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.11.19
** Copyright (c) 2021 Microsoft Corporation
**********************************************************************

I have these directories for include, all under %programfiles(x86)% but none under %programfiles% image

I don't seem to have an INCLUDE environment variable? Maybe I am misunderstanding? dir env: in Powershell returns:

PS C:\Users\y0himba\Desktop> dir env:

Name                           Value
----                           -----
_CONDA_EXE                     C:\Users\y0himba\anaconda3\Scripts\conda.exe
_CONDA_ROOT                    C:\Users\y0himba\anaconda3
ALLUSERSPROFILE                C:\ProgramData
APPDATA                        C:\Users\y0himba\AppData\Roaming
ChocolateyInstall              C:\ProgramData\chocolatey
ChocolateyLastPathUpdate       132471808376160578
ChocolateyToolsLocation        C:\ProgramData\chocolatey
CLASSPATH                      C:\Program Files\Java_64_bit
CMAKE_CUDA_COMPILER            C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin
CommonProgramFiles             C:\Program Files\Common Files
CommonProgramFiles(x86)        C:\Program Files (x86)\Common Files
CommonProgramW6432             C:\Program Files\Common Files
COMPUTERNAME                   GHETTOPC
ComSpec                        C:\WINDOWS\system32\cmd.exe
CONDA_DEFAULT_ENV              base
CONDA_EXE                      C:\Users\y0himba\anaconda3\Scripts\conda.exe
CONDA_PREFIX                   C:\Users\y0himba\anaconda3
CONDA_PROMPT_MODIFIER          (base)
CONDA_PYTHON_EXE               C:\Users\y0himba\anaconda3\python.exe
CONDA_SHLVL                    1
CUDA_HOME                      C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
CUDA_PATH                      C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
CUDA_PATH_V11_8                C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
CYGWIN                         C:\cygwin64
DISTUTILS_USE_SDK              1
DriverData                     C:\Windows\System32\Drivers\DriverData
HOMEDRIVE                      C:
HOMEPATH                       \Users\y0himba
INTEL_DEV_REDIST               c:\Program Files (x86)\Common Files\Intel\Shared Libraries\
LOCALAPPDATA                   C:\Users\y0himba\AppData\Local
LOGONSERVER                    \\GHETTOPC
MIC_LD_LIBRARY_PATH            c:\Program Files (x86)\Common Files\Intel\Shared Libraries\compiler\lib\intel64_win_mic
NDI_RUNTIME_DIR_V2             C:\Program Files\NewTek\NDI 4 Runtime\v4
NDI_RUNTIME_DIR_V3             C:\Program Files\NewTek\NDI 4 Runtime\v4
NDI_RUNTIME_DIR_V4             C:\Program Files\NewTek\NDI 4 Runtime\v4
NPACKD_CL                      C:\Program Files\NpackdCL
NUMBER_OF_PROCESSORS           8
NVM_HOME                       C:\Users\y0himba\AppData\Roaming\nvm
NVM_SYMLINK                    C:\Program Files\nodejs
NVTOOLSEXT_PATH                C:\Program Files\NVIDIA Corporation\NvToolsExt\
OneDrive                       E:\Documents\OneDrive
OneDriveConsumer               E:\Documents\OneDrive
OptiX_INSTALL_DIR              C:\ProgramData\NVIDIA Corporation\OptiX SDK 7.5.0
OS                             Windows_NT
Path                           C:\Users\y0himba\anaconda3;C:\Users\y0himba\anaconda3\Library\mingw-w64\bin;C:\Users\y0…
PATHEXT                        .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.PYW;.RB;.RBW;.CPL
POWERSHELL_DISTRIBUTION_CHANN… MSI:Windows 10 Pro
PROCESSOR_ARCHITECTURE         AMD64
PROCESSOR_IDENTIFIER           Intel64 Family 6 Model 158 Stepping 9, GenuineIntel
PROCESSOR_LEVEL                6
PROCESSOR_REVISION             9e09
ProgramData                    C:\ProgramData
ProgramFiles                   C:\Program Files
ProgramFiles(x86)              C:\Program Files (x86)
ProgramW6432                   C:\Program Files
PSModulePath                   E:\Documents\PowerShell\Modules;C:\Program Files\PowerShell\Modules;c:\program files\po…
PUBLIC                         C:\Users\Public
QT_SCALE_FACTOR_ROUNDING_POLI… RoundPreferFloor
RUBYOPT                        -Eutf-8
SESSIONNAME                    Console
SystemDrive                    C:
SystemRoot                     C:\WINDOWS
TCNN_CUDA_ARCHITECTURES        86
TEMP                           C:\Users\y0himba\AppData\Local\Temp
TMP                            C:\Users\y0himba\AppData\Local\Temp
USERDOMAIN                     GHETTOPC
USERDOMAIN_ROAMINGPROFILE      GHETTOPC
USERNAME                       y0himba
USERPROFILE                    C:\Users\y0himba
VK_SDK_PATH                    C:\VulkanSDK\1.3.224.1
VULKAN_SDK                     C:\VulkanSDK\1.3.224.1
windir                         C:\WINDOWS
WSA_PACMAN_HOME                C:\Program Files\WSA PacMan
bitRAKE commented 1 year ago

Your missing the Windows SDK. https://developer.microsoft.com/en-us/windows/downloads/sdk-archive/ Install the latest one and you should be all set.

y0himba commented 1 year ago

Your missing the Windows SDK. https://developer.microsoft.com/en-us/windows/downloads/sdk-archive/ Install the latest one and you should be all set.

Installed, and the INCLUDES are now there. Still unable to install raymarching:

C``` :\stable-diffusion\stable-dreamfusion>echo %INCLUDE% C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\ATLMFC\include;C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\winrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\cppwinrt

C:\stable-diffusion\stable-dreamfusion>pip install ./raymarching Processing c:\stable-diffusion\stable-dreamfusion\raymarching Preparing metadata (setup.py) ... done Building wheels for collected packages: raymarching Building wheel for raymarching (setup.py) ... error error: subprocess-exited-with-error

× python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [1303 lines of output]

flobotics commented 1 year ago

just a question, you asked for a detailed windows install guide. Perhaps you could write a e.g. numbered list, with what you do till you fail. The list should be simple to post it here again and again until it is complete :)

The list could look like e.g.

  1. use windows 10
  2. install anaconda3, git, python pip etc.
  3. create folder named "git", go into it and call "git clone https://github.com/ashawkey/stable-dreamfusion.git"
  4. go into the folder stable-dreamfusion
  5. open anaconda3 powershell prompt
  6. change to stable-dreamfusion folder
  7. pip install -r requirements.txt
  8. etc.

Perhaps the list will get a script (to easy install, reproduce) or it helps others, like e.g. https://github.com/ashawkey/stable-dreamfusion/issues/56 :)

DuckersMcQuack commented 1 year ago

Any idea for this error? Using windows 11 and anaconda navigator.

` (StableDreamfusion) C:\Stablediff\stable-dreamfusion>pip install ./raymarching Processing c:\stablediff\stable-dreamfusion\raymarching Preparing metadata (setup.py) ... done Building wheels for collected packages: raymarching Building wheel for raymarching (setup.py) ... error error: subprocess-exited-with-error

× python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [4 lines of output] running bdist_wheel running build running build_ext error: [WinError 2] The system cannot find the file specified [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for raymarching Running setup.py clean for raymarching Failed to build raymarching Installing collected packages: raymarching Running setup.py install for raymarching ... error error: subprocess-exited-with-error

× Running setup.py install for raymarching did not run successfully. │ exit code: 1 ╰─> [6 lines of output] running install C:\Users\Duckers\anaconda3\envs\StableDreamfusion\lib\site-packages\setuptools\command\install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools. warnings.warn( running build running build_ext error: [WinError 2] The system cannot find the file specified [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. error: legacy-install-failure

× Encountered error while trying to install package. ╰─> raymarching

note: This is an issue with the package mentioned above, not pip. hint: See above for output from the failure. ``


Tested without the optional ones, and ran the training test, but then it couldn't find _gridencoder, and google had nothing on it

RuntimeError: Error building extension '_grid_encoder': ninja: error: build.ninja:3: lexing error

569363087 commented 1 year ago

Any idea for this error? Using windows 11 and anaconda navigator.

` (StableDreamfusion) C:\Stablediff\stable-dreamfusion>pip install ./raymarching Processing c:\stablediff\stable-dreamfusion\raymarching Preparing metadata (setup.py) ... done Building wheels for collected packages: raymarching Building wheel for raymarching (setup.py) ... error error: subprocess-exited-with-error

× python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [4 lines of output] running bdist_wheel running build running build_ext error: [WinError 2] The system cannot find the file specified [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for raymarching Running setup.py clean for raymarching Failed to build raymarching Installing collected packages: raymarching Running setup.py install for raymarching ... error error: subprocess-exited-with-error

× Running setup.py install for raymarching did not run successfully. │ exit code: 1 ╰─> [6 lines of output] running install C:\Users\Duckers\anaconda3\envs\StableDreamfusion\lib\site-packages\setuptools\command\install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools. warnings.warn( running build running build_ext error: [WinError 2] The system cannot find the file specified [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. error: legacy-install-failure

× Encountered error while trying to install package. ╰─> raymarching

note: This is an issue with the package mentioned above, not pip. hint: See above for output from the failure. ``

Tested without the optional ones, and ran the training test, but then it couldn't find _gridencoder, and google had nothing on it

RuntimeError: Error building extension '_grid_encoder': ninja: error: build.ninja:3: lexing error

Hello, did you solve it ? Facing the same problem.

hzhshok commented 1 year ago

Hi, Now i have solved the issue about 'too few arguments for template template parameter "Tuple', and it worked fine for training after struggling on the anaconda -> cuda -> requirement. The following is my last[working] steps. a. Conda using 'Anaconda3-2022.10-Windows-x86_64.exe'. b. Cuda using 'cuda_11.7.1_516.94_windows.exe' which is the best important to fix the cuda compilation. c. Pytorch using cuda11.7 : conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.7 -c pytorch -c nvidia Note: If it have errors about numpy/scipy, then uninstall them and reinstall, and the others you can ignors or reinstall it, e.g. i only spyder/dependences error(ignor it). d. Install requirement.txt. e. Install extentions as that .sh: raymarching, etc. It should be fine using cuda 11.7. and 11.8 maybe be no sutiable pytorch version( torch.cuda invailable). f. Then, at least it should be able to run training.

Soft/Hardware: 3090 + win11.

Regards

JackISODesign commented 1 year ago

Hi, Now i have solved the issue about 'too few arguments for template template parameter "Tuple', and it worked fine for training after struggling on the anaconda -> cuda -> requirement. The following is my last[working] steps. a. Conda using 'Anaconda3-2022.10-Windows-x86_64.exe'. b. Cuda using 'cuda_11.7.1_516.94_windows.exe' which is the best important to fix the cuda compilation. c. Pytorch using cuda11.7 : conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.7 -c pytorch -c nvidia Note: If it have errors about numpy/scipy, then uninstall them and reinstall, and the others you can ignors or reinstall it, e.g. i only spyder/dependences error(ignor it). d. Install requirement.txt. e. Install extentions as that .sh: raymarching, etc. It should be fine using cuda 11.7. and 11.8 maybe be no sutiable pytorch version( torch.cuda invailable). f. Then, at least it should be able to run training.

Soft/Hardware: 3090 + win11.

Regards

Thank you so much, this order of things works on windows. Absolute hero.