Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

error: invalid conversion from ‘EmptyKernelPtr’ {aka ‘void (*)()’} to ‘const void*’ [-fpermissive] #510

Closed
jiapei-nexera opened this issue Jun 16, 2022 · 2 comments
Assignees
Labels
P0: must have Absolutely necessary. Critical issue, major blocker, etc. type: bug: functional Does not work as intended.
Milestone

Comments

@jiapei-nexera
Copy link

Failed to build Open3D with the following ERROR messages:
Does it have anything to do with cub ?

[ 71%] Building C object CMakeFiles/png_static.dir/pngwio.c.o
In file included from /usr/local/cuda/include/nv/detail/__target_macros:13,
                 from /usr/local/cuda/include/nv/target:195,
                 from /usr/local/cuda/include/cub/detail/device_synchronize.cuh:23,
                 from /usr/local/cuda/include/thrust/system/cuda/detail/util.h:36,
                 from /usr/local/cuda/include/thrust/system/cuda/detail/malloc_and_free.h:26,
                 from /usr/local/cuda/include/thrust/system/detail/adl/malloc_and_free.h:42,
                 from /usr/local/cuda/include/thrust/system/detail/generic/memory.inl:22,
                 from /usr/local/cuda/include/thrust/system/detail/generic/memory.h:69,
                 from /usr/local/cuda/include/thrust/detail/reference.h:28,
                 from ....../Open3D/build/stdgpu/src/ext_stdgpu/src/stdgpu/../stdgpu/iterator.h:30,
                 from ....../Open3D/build/stdgpu/src/ext_stdgpu/src/stdgpu/impl/iterator.cpp:16:
/usr/local/cuda/include/cub/util_device.cuh: In function ‘cudaError_t cub::PtxVersionUncached(int&)’:
/usr/local/cuda/include/cub/util_device.cuh:368:15: error: invalid conversion from ‘EmptyKernelPtr’ {aka ‘void (*)()’} to ‘const void*’ [-fpermissive]
  368 |           if (CubDebug(result = cudaFuncGetAttributes(&empty_kernel_attrs,
      |               ^~~~~~~~
      |               |
      |               EmptyKernelPtr {aka void (*)()}
In file included from /usr/local/cuda/include/thrust/system/cuda/detail/guarded_cuda_runtime_api.h:38,
                 from /usr/local/cuda/include/thrust/system/cuda/detail/malloc_and_free.h:19,
                 from /usr/local/cuda/include/thrust/system/detail/adl/malloc_and_free.h:42,
                 from /usr/local/cuda/include/thrust/system/detail/generic/memory.inl:22,
                 from /usr/local/cuda/include/thrust/system/detail/generic/memory.h:69,
                 from /usr/local/cuda/include/thrust/detail/reference.h:28,
                 from ....../Open3D/build/stdgpu/src/ext_stdgpu/src/stdgpu/../stdgpu/iterator.h:30,
                 from ....../Open3D/build/stdgpu/src/ext_stdgpu/src/stdgpu/impl/iterator.cpp:16:
/usr/local/cuda/include/cuda_runtime_api.h:4337:125: note:   initializing argument 2 of ‘cudaError_t cudaFuncGetAttributes(cudaFuncAttributes*, const void*)’
 4337 | extern __host__ __cudart_builtin__ cudaError_t CUDARTAPI cudaFuncGetAttributes(struct cudaFuncAttributes *attr, const void *func);
      |                                                                                                                 ~~~~~~~~~~~~^~~~
@alliepiper
Copy link
Collaborator

Which compiler are you seeing this on?

@alliepiper
Copy link
Collaborator

This sounded familiar, and it was fixed in #404. But, it looks like the fix was lost on main during a merge conflict a couple weeks ago so it's broken again. #513 will restore the fix.

@alliepiper alliepiper self-assigned this Jun 22, 2022
@alliepiper alliepiper added type: bug: functional Does not work as intended. P0: must have Absolutely necessary. Critical issue, major blocker, etc. labels Jun 22, 2022
@alliepiper alliepiper added this to the 2.0.0 milestone Jun 22, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
P0: must have Absolutely necessary. Critical issue, major blocker, etc. type: bug: functional Does not work as intended.
Projects
None yet
Development

No branches or pull requests

2 participants