mirror of
https://github.com/facebookresearch/pytorch3d.git
synced 2025-12-22 07:10:34 +08:00
Fixed windows MSVC build compatibility (#9)
Summary: Fixed a few MSVC compiler (visual studio 2019, MSVC 19.16.27034) compatibility issues 1. Replaced long with int64_t. aten::data_ptr\<long\> is not supported in MSVC 2. pytorch3d/csrc/rasterize_points/rasterize_points_cpu.cpp, inline function is not correctly recognized by MSVC. 3. pytorch3d/csrc/rasterize_meshes/geometry_utils.cuh const auto kEpsilon = 1e-30; MSVC does not compile this const into both host and device, change to a MACRO. 4. pytorch3d/csrc/rasterize_meshes/geometry_utils.cuh, const float area2 = pow(area, 2.0); 2.0 is considered as double by MSVC and raised an error 5. pytorch3d/csrc/rasterize_points/rasterize_points_cpu.cpp std::tuple<torch::Tensor, torch::Tensor> RasterizePointsCoarseCpu() return type does not match the declaration in rasterize_points_cpu.h. Pull Request resolved: https://github.com/facebookresearch/pytorch3d/pull/9 Reviewed By: nikhilaravi Differential Revision: D19986567 Pulled By: yuanluxu fbshipit-source-id: f4d98525d088c99c513b85193db6f0fc69c7f017
This commit is contained in:
committed by
Facebook Github Bot
parent
a3baa367e3
commit
9e21659fc5
40
INSTALL.md
40
INSTALL.md
@@ -7,7 +7,7 @@
|
||||
|
||||
The core library is written in PyTorch. Several components have underlying implementation in CUDA for improved performance. A subset of these components have CPU implementations in C++/Pytorch. It is advised to use PyTorch3d with GPU support in order to use all the features.
|
||||
|
||||
- Linux or macOS
|
||||
- Linux or macOS or Windows
|
||||
- Python ≥ 3.6
|
||||
- PyTorch 1.4
|
||||
- torchvision that matches the PyTorch installation. You can install them together at pytorch.org to make sure of this.
|
||||
@@ -72,3 +72,41 @@ To rebuild after installing from a local clone run, `rm -rf build/ **/*.so` then
|
||||
```
|
||||
MACOSX_DEPLOYMENT_TARGET=10.14 CC=clang CXX=clang++ pip install -e .
|
||||
```
|
||||
|
||||
**Install from local clone on Windows:**
|
||||
|
||||
If you are using pre-compiled pytorch 1.4 and torchvision 0.5, you should make the following changes to the pytorch source code to successfully compile with Visual Studio 2019 (MSVC 19.16.27034) and CUDA 10.1.
|
||||
|
||||
Change python/Lib/site-packages/torch/include/csrc/jit/script/module.h
|
||||
|
||||
L466, 476, 493, 506, 536
|
||||
```
|
||||
-static constexpr *
|
||||
+static const *
|
||||
```
|
||||
Change python/Lib/site-packages/torch/include/csrc/jit/argument_spec.h
|
||||
|
||||
L190
|
||||
```
|
||||
-static constexpr size_t DEPTH_LIMIT = 128;
|
||||
+static const size_t DEPTH_LIMIT = 128;
|
||||
```
|
||||
|
||||
Change python/Lib/site-packages/torch/include/pybind11/cast.h
|
||||
|
||||
L1449
|
||||
```
|
||||
-explicit operator type&() { return *(this->value); }
|
||||
+explicit operator type& () { return *((type*)(this->value)); }
|
||||
```
|
||||
|
||||
After patching, you can go to "x64 Native Tools Command Prompt for VS 2019" to compile and install
|
||||
```
|
||||
cd pytorch3d
|
||||
python3 setup.py install
|
||||
```
|
||||
After installing, verify whether all unit tests have passed
|
||||
```
|
||||
cd tests
|
||||
python3 -m unittest discover -p *.py
|
||||
```
|
||||
Reference in New Issue
Block a user