Cannot compile on Windows 11 with Tensorflow OPS and CUDA"
- Dominant language
- C++
- Stars
- 14k
- Forks
- 2.6k
- Avg merge
- 5d 18h
- Merged PRs (30d)
- 6
Description
### Checklist
- [X] I have searched for [similar issues](https://github.com/isl-org/Open3D/issues).
- [X] For Python issues, I have tested with the [latest development wheel](http://www.open3d.org/docs/latest/getting_started.html#development-version-pip).
- [X] I have checked the [release documentation](http://www.open3d.org/docs/release/) and the [latest documentation](http://www.open3d.org/docs/latest/) (for `master` branch).
### Steps to reproduce the issue
#### I first cloned Open3D by:
```
git clone https://github.com/isl-org/Open3D.git
```
#### Then, I build Open3D (on Windows 11, with CUDA 11.2) with:
```
"C:\Program Files\CMake\bin\cmake.EXE" --no-warn-unused-cli -DBUILD_TENSORFLOW_OPS=ON -DBUILD_CUDA_MODULE=ON "-DGLIBCXX_USE_CXX11_ABI=OFF " -DBUNDLE_OPEN3D_ML=ON -DOPEN3D_ML_ROOT=F:\Thesis\Open3D-ML -DTensorflow_FRAMEWORK_LIB=C:\Users\ma7mo\anaconda3\lib\site-packages\tensorflow "-DCUDAToolkit_BIN_DIR=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin" -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -Hf:/Thesis/Open3D -Bf:/Thesis/Open3D/build -G "Visual Studio 16 2019" -T host=x64 -A x64
"C:\Program Files\CMake\bin\cmake.EXE" --build f:/Thesis/Open3D/build --config Release --target ALL_BUILD -j 26 --
```
### Error message
```shell
[build] VoxelizeOpKernel.cu
[build] C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\BuildCustomizations\CUDA 11.2.targets(785,9): error MSB3721: The command ""C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin\nvcc.exe" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64" -x cu -IF:\Thesis\Open3D\cpp -I"C:\Users\ma7mo\anaconda3\lib\site-packages\tensorflow\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include" -IF:\Thesis\Open3D\3rdparty\glew\include -IF:\Thesis\Open3D\3rdparty\glfw\include -IF:\Thesis\Open3D\build\fmt\include -IF:\Thesis\Open3D\build\filament\src\ext_filament\include -IF:\Thesis\Open3D\build\assimp\include -IF:\Thesis\Open3D\build\cutlass\src\ext_cutlass -IF:\Thesis\Open3D\3rdparty\dirent -IF:\Thesis\Open3D\build\nanoflann\src\ext_nanoflann\include -IF:\Thesis\Open3D\build\turbojpeg\include -IF:\Thesis\Open3D\build\jsoncpp\include -IF:\Thesis\Open3D\3rdparty\liblzf -IF:\Thesis\Open3D\3rdparty\tomasakeninemoeller\include -IF:\Thesis\Open3D\build\curl\include -IF:\Thesis\Open3D\build\boringssl\src\ext_boringssl\Release\include -IF:\Thesis\Open3D\build\libpng\include -IF:\Thesis\Open3D\build\zlib\include -IF:\Thesis\Open3D\3rdparty\rply\rply -IF:\Thesis\Open3D\3rdparty\tinyfiledialogs\include -IF:\Thesis\Open3D\build\tinygltf\src\ext_tinygltf -IF:\Thesis\Open3D\build\tinyobjloader\src\ext_tinyobjloader -IF:\Thesis\Open3D\build\qhull\src\ext_qhull\src -IF:\Thesis\Open3D\build\poisson\src\ext_poisson -IF:\Thesis\Open3D\build\imgui\src\ext_imgui -IF:\Thesis\Open3D\build\zeromq\include -IF:\Thesis\Open3D\build\zeromq\src\ext_cppzmq -I"F:\Thesis\Open3D\build\msgpack-c\src\ext_msgpack-c\include" -IF:\Thesis\Open3D\build\mkl_install\include -IF:\Thesis\Open3D\build\ippicv\include\icv -IF:\Thesis\Open3D\build\ippicv\include -IF:\Thesis\Open3D\build\stdgpu\include -IF:\Thesis\Open3D\build\embree\include -IF:\Thesis\Open3D\build\embree\src\ext_embree -IF:\Thesis\Open3D\build\webrtc\src\ext_webrtc\Release\include -I"F:\Thesis\Open3D\build\webrtc\src\ext_webrtc\Release\include\third_party\abseil-cpp" -IF:\Thesis\Open3D\build\webrtc\src\ext_webrtc\Release\include\third_party\jsoncpp\source\include -IF:\Thesis\Open3D\build\webrtc\src\ext_webrtc\Release\include\third_party\jsoncpp\generated -IF:\Thesis\Open3D\build\webrtc\src\ext_webrtc\Release\include\third_party\libyuv\include -IF:\Thesis\Open3D\build\civetweb\include -IF:\Thesis\Open3D\build\eigen\src\ext_eigen -IF:\Thesis\Open3D\build\parallelstl\src\ext_parallelstl\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static --Werror cross-execution-space-call,deprecated-declarations --Werror all-warnings --Werror ext-lambda-captures-this --expt-relaxed-constexpr --diag-suppress 2809 -std=c++17 -Xcompiler="/EHsc -Ob2 /sdl,/GS,/guard:cf /W4,/WX,/Wv:18,/wd4201,/wd4310,/wd4505,/wd4127,/wd4146,/wd4189,/wd4324,/wd4706,/wd4100,/wd4702,/wd4244,/wd4245,/wd4267,/wd4305" -D_WINDOWS -DNDEBUG -D_GLIBCXX_USE_CXX11_ABI=0 -DBUILD_CUDA_MODULE -D_SILENCE_CXX17_RESULT_OF_DEPRECATION_WARNING -DOPEN3D_STATIC -DGLEW_STATIC -DFMT_HEADER_ONLY=0 -DFMT_USE_WINDOWS_H=0 -DFMT_STRING_ALIAS=1 -DTINYGLTF_IMPLEMENTATION -DSTB_IMAGE_IMPLEMENTATION -DSTB_IMAGE_WRITE_IMPLEMENTATION -DTINYOBJLOADER_IMPLEMENTATION -D"CMAKE_INTDIR=\"Release\"" -Dopen3d_tf_ops_EXPORTS -D_WINDLL -D_MBCS -DWIN32 -D_WINDOWS -D_CRT_SECURE_NO_WARNINGS -DNDEBUG -D_GLIBCXX_USE_CXX11_ABI=0 -DBUILD_CUDA_MODULE -DOPEN3D_STATIC -DGLEW_STATIC -DFMT_HEADER_ONLY=0 -DFMT_USE_WINDOWS_H=0 -DFMT_STRING_ALIAS=1 -DTINYGLTF_IMPLEMENTATION -DSTB_IMAGE_IMPLEMENTATION -DSTB_IMAGE_WRITE_IMPLEMENTATION -DTINYOBJLOADER_IMPLEMENTATION -DMKL_ILP64 -D"CMAKE_INTDIR=\"Release\"" -Dopen3d_tf_ops_EXPORTS -Xcompiler "/EHsc /W4 /nologo /O2 /Fdopen3d_tf_ops.dir\Release\vc142.pdb /FS /MT /GR" -o open3d_tf_ops.dir\Release\/misc/VoxelizeOpKernel.cu.obj "F:\Thesis\Open3D\cpp\open3d\ml\tensorflow\misc\VoxelizeOpKernel.cu"" exited with code 2. [F:\Thesis\Open3D\build\cpp\open3d\ml\tensorflow\open3d_tf_ops.vcxproj]
[build] Build finished with exit code 1
```
### Open3D, Python and System information
```markdown
- Operating system: Windows 11 64-bit
- Python version: Python 3.8
- Open3D version: output from python: 0.15.1
- System architecture: x86
- Is this a remote workstation?: no
- How did you install Open3D?: build from source
- Compiler version (if built from source): VS Community 2019
```
### Additional information
I then run the failed command in a separate terminal and get this error.
```
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include\crt/host_config.h(238): fatal error C1083: Cannot open include file: 'crtdefs.h': No such file or directory
```
Error with --verbose flag
```
"F:\Thesis\Open3D\build\ALL_BUILD.vcxproj" (default target) (1) ->
"F:\Thesis\Open3D\build\cpp\open3d\ml\tensorflow\open3d_tf_ops.vcxproj" (default target) (115) ->
"F:\Thesis\Open3D\build\cpp\open3d\ml\tensorflow\open3d_tf_ops.vcxproj" (CudaBuildCore target) (115:15) ->
C:\Users\ma7mo\anaconda3\lib\site-packages\tensorflow\include\unsupported\Eigen\CXX11\src/Tensor/TensorContractionGpu.h(290): error C2220: the following warning is treated as an error [F:\Thesis\Open3D\build\cpp\open3d\ml\tensorflow\open3d_tf_ops.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\BuildCustomizations\CUDA 11.2.targets(785,9): error MSB3721: The command ""C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin\nvcc.exe" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64" -x cu -IF:\Thesis\Open3D\cpp -I"C:\Users\ma7mo\a
naconda3\lib\site-packages\tensorflow\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include" -IF:\Thesis\Open3D\3rdparty\glew\include -IF:\Thesis\Open3D\3rdparty\glfw\include -IF:\Thesis\Open3D\build\fmt\include -IF:\Thesis\Open3D\build\filament\src\ext_filament\include -IF:\Thesis\Open3D\build\assimp\include -IF:\Thesis\Open3D\build\cutlass\src\ext_cutlass -IF:\Thesis\Open3D\3rdparty\dirent -IF:\Thesis\Open3D\build\nanoflann\src\ext_nanof
lann\include -IF:\Thesis\Open3D\build\turbojpeg\include -IF:\Thesis\Open3D\build\jsoncpp\include -IF:\Thesis\Open3D\3rdparty\liblzf -IF:\Thesis\Open3D\3rdparty\tomasakeninemoeller\include -IF:\Thesis\Open3D\build\curl\include -IF:\Thesis\Open3D\build\boringssl\src\ext_boringssl\Release\include -IF:\Thesis\Open3D\build\libpng\include -IF:\Thesis\Open3D\build\zlib\include -IF:\Thesis\Open3D\3rdparty\rply\rply -IF:\Thesis\Open3D\3rdparty\tinyfiledialogs\include -IF
:\Thesis\Open3D\build\tinygltf\src\ext_tinygltf -IF:\Thesis\Open3D\build\tinyobjloader\src\ext_tinyobjloader -IF:\Thesis\Open3D\build\qhull\src\ext_qhull\src -IF:\Thesis\Open3D\build\poisson\src\ext_poisson -IF:\Thesis\Open3D\build\imgui\src\ext_imgui -IF:\Thesis\Open3D\build\zeromq\include -IF:\Thesis\Open3D\build\zeromq\src\ext_cppzmq -I"F:\Thesis\Open3D\build\msgpack-c\src\ext_msgpack-c\include" -IF:\Thesis\Open3D\build\mkl_install\include -IF:\Thesis\Open3D\
build\ippicv\include\icv -IF:\Thesis\Open3D\build\ippicv\include -IF:\Thesis\Open3D\build\stdgpu\include -IF:\Thesis\Open3D\build\embree\include -IF:\Thesis\Open3D\build\embree\src\ext_embree -IF:\Thesis\Open3D\build\webrtc\src\ext_webrtc\Release\include -I"F:\Thesis\Open3D\build\webrtc\src\ext_webrtc\Release\include\third_party\abseil-cpp" -IF:\Thesis\Open3D\build\webrtc\src\ext_webrtc\Release\include\third_party\jsoncpp\source\include -IF:\Thesis\Open3D\build\
webrtc\src\ext_webrtc\Release\include\third_party\jsoncpp\generated -IF:\Thesis\Open3D\build\webrtc\src\ext_webrtc\Release\include\third_party\libyuv\include -IF:\Thesis\Open3D\build\civetweb\include -IF:\Thesis\Open3D\build\eigen\src\ext_eigen -IF:\Thesis\Open3D\build\parallelstl\src\ext_parallelstl\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static --We
rror cross-execution-space-call,deprecated-declarations --Werror all-warnings --Werror ext-lambda-captures-this --expt-relaxed-constexpr --diag-suppress 2809 -std=c++17 -Xcompiler="/EHsc -Ob2 /sdl,/GS,/guard:cf /W4,/WX,/Wv:18,/wd4201,/wd4310,/wd4505,/wd4127,/wd4146,/wd4189,/wd4324,/wd4706,/wd4100,/wd4702,/wd4244,/wd4245,/wd4267,/wd4305" -D_WINDOWS -DNDEBUG -D_GLIBCXX_USE_CXX11_ABI=0 -DBUILD_CUDA_MODULE -D_SILENCE_CXX17_RESULT_OF_DEPRECATION_WARNING -DOPEN3D_ST
ATIC -DGLEW_STATIC -DFMT_HEADER_ONLY=0 -DFMT_USE_WINDOWS_H=0 -DFMT_STRING_ALIAS=1 -DTINYGLTF_IMPLEMENTATION -DSTB_IMAGE_IMPLEMENTATION -DSTB_IMAGE_WRITE_IMPLEMENTATION -DTINYOBJLOADER_IMPLEMENTATION -D"CMAKE_INTDIR=\"Release\"" -Dopen3d_tf_ops_EXPORTS -D_WINDLL -D_MBCS -DWIN32 -D_WINDOWS -D_CRT_SECURE_NO_WARNINGS -DNDEBUG -D_GLIBCXX_USE_CXX11_ABI=0 -DBUILD_CUDA_MODULE -DOPEN3D_STATIC -DGLEW_STATIC -DFMT_HEADER_ONLY=0 -DFMT_USE_WINDOWS_H=0 -DFMT_STRING_ALIAS=1 -D
TINYGLTF_IMPLEMENTATION -DSTB_IMAGE_IMPLEMENTATION -DSTB_IMAGE_WRITE_IMPLEMENTATION -DTINYOBJLOADER_IMPLEMENTATION -DMKL_ILP64 -D"CMAKE_INTDIR=\"Release\"" -Dopen3d_tf_ops_EXPORTS -Xcompiler "/EHsc /W4 /nologo /O2 /Fdopen3d_tf_ops.dir\Release\vc142.pdb /FS /MT /GR" -o open3d_tf_ops.dir\Release\/misc/VoxelizeOpKernel.cu.obj "F:\Thesis\Open3D\cpp\open3d\ml\tensorflow\misc\VoxelizeOpKernel.cu"" exited with code 2. [F:\Thesis\Open3D\build\cpp\open3d\ml\tensorflow\
open3d_tf_ops.vcxproj]
```
I know building with TENSORFLOW-OPS is not working on windows but I decided to give it a go anyhow. Any hope?
Also, I have very limited experience with C++ and compiling.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.