AcademySoftwareFoundation / AcademySoftwareFoundation/openvdb
[BUILD] nanovdb compile errors
- Dominant language
- C++
- Stars
- 3.4k
- Forks
- 774
- Avg merge
- 3d 9h
- Merged PRs (30d)
- 34
Description
### Environment
**Operating System:** Manjaro Linux
**Version / Commit SHA:** 4a186c2ed4fe3ea925b9c1c6251ac8d0ad3772f0
**CMake Version:** 3.22.1
**Compiler:** gcc 11.1, CUDA 11.2
### Describe the problem
Lots of compile errors:
/tmp/openvdb-nanovdb/nanovdb/nanovdb/examples/benchmark/Benchmark.cpp:675:24: error: no matching function for call to ‘nanovdb::GridHandle::deviceUpload(CUstream_st*&, bool)’
675 | handle.deviceUpload(stream, false);
/tmp/openvdb-nanovdb/nanovdb/nanovdb/./nanovdb/util/GridHandle.h:160:5: error: no type named ‘type’ in ‘struct std::enable_if’
/tmp/openvdb-nanovdb/nanovdb/nanovdb/examples/benchmark/Benchmark.cpp:701:24: error: invalid initialization of reference of type ‘const nanovdb::GridHandle&’ from expression of type ‘nanovdb::GridHandle’
701 | launch_kernels(handle, imgHandle, dev_camera, stream);
/tmp/openvdb-nanovdb/nanovdb/nanovdb/./nanovdb/util/Primitives.h:563:78: error: static assertion failed: initTorus: expect floating point
563 | (is_floating_point::Type>::value, "initTorus: expect floating point");
/tmp/openvdb-nanovdb/nanovdb/nanovdb/./nanovdb/util/GridBuilder.h:713:38: error: cannot convert ‘nanovdb::LeafData::ValueType*’ {aka ‘nanovdb::CudaDeviceBuffer*’} to ‘float*’ in initialization
713 | for (ValueT *dst = data->mValues, *end = dst + SrcNode0::SIZE; dst != end; dst += 4, src += 4) {
/tmp/openvdb-nanovdb/nanovdb/nanovdb/./nanovdb/util/GridStats.h:487:12: error: use of deleted function ‘nanovdb::CudaDeviceBuffer& nanovdb::CudaDeviceBuffer::operator=(const nanovdb::CudaDeviceBuffer&)’
487 | mDelta = delta; // delta = voxel size for level sets, else 0
/tmp/openvdb-nanovdb/nanovdb/nanovdb/./nanovdb/util/GridBuilder.h:916:37: error: use of deleted function ‘nanovdb::CudaDeviceBuffer& nanovdb::CudaDeviceBuffer::operator=(const nanovdb::CudaDeviceBuffer&)’
916 | data->mMinimum = data->mMaximum = data->mBackground = mRoot.mBackground;
Contributor guide
Research direction
Reproduce the build with Manjaro Linux, CMake 3.22.1, GCC 11.1, CUDA 11.2, and commit 4a186c2ed4fe3ea925b9c1c6251ac8d0ad3772f. Start with examples/benchmark/Benchmark.cpp and the reported locations in nanovdb/util/GridHandle.h, Primitives.h, GridBuilder.h, and GridStats.h; done means the listed NanoVDB compilation errors no longer occur.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake, cpp
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100