Skip to content

build error with CUDA 12.9 + VS2022 #142

Description

@oUp2Uo

Hi,

I saw in readme:

This library is packaged under 64 Bit Ubuntu Linux 24.04 and CUDA 12.9.

And I tried to compile with CUDA 12.9 + VS2022 on Windows.
But I met lots of thrust errors.

I just put some here:

7>C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.9/include\thrust/system/detail/generic/for_each.h(49): error : static assertion failed with "unimplemented for this system"
7>    static_assert((thrust::detail::depend_on_instantiation<InputIterator, false>::value), "unimplemented for this system");
7>    ^
7>          detected during:
7>            instantiation of "InputIterator thrust::THRUST_200802_SM_860_NS::system::detail::generic::for_each(thrust::THRUST_200802_SM_860_NS::execution_policy<DerivedPolicy> &, InputIterator, InputIterator, UnaryFunction) [with DerivedPolicy=thrust::THRUST_200802_SM_860_NS::cuda_cub::tag, InputIterator=thrust::THRUST_200802_SM_860_NS::detail::normal_iterator<thrust::THRUST_200802_SM_860_NS::device_ptr<int>>, UnaryFunction=thrust::THRUST_200802_SM_860_NS::detail::device_generate_functor<thrust::THRUST_200802_SM_860_NS::detail::fill_functor<int>>]" at line 46 of C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.9/include\thrust/detail/for_each.inl
7>            instantiation of "InputIterator thrust::THRUST_200802_SM_860_NS::for_each(const thrust::THRUST_200802_SM_860_NS::detail::execution_policy_base<DerivedPolicy> &, InputIterator, InputIterator, UnaryFunction) [with DerivedPolicy=thrust::THRUST_200802_SM_860_NS::cuda_cub::tag, InputIterator=thrust::THRUST_200802_SM_860_NS::detail::normal_iterator<thrust::THRUST_200802_SM_860_NS::device_ptr<int>>, UnaryFunction=thrust::THRUST_200802_SM_860_NS::detail::device_generate_functor<thrust::THRUST_200802_SM_860_NS::detail::fill_functor<int>>]" at line 61 of C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.9/include\thrust/system/detail/generic/generate.inl
7>            instantiation of "void thrust::THRUST_200802_SM_860_NS::system::detail::generic::generate(thrust::THRUST_200802_SM_860_NS::execution_policy<ExecutionPolicy> &, ForwardIterator, ForwardIterator, Generator) [with ExecutionPolicy=thrust::THRUST_200802_SM_860_NS::cuda_cub::tag, ForwardIterator=thrust::THRUST_200802_SM_860_NS::detail::normal_iterator<thrust::THRUST_200802_SM_860_NS::device_ptr<int>>, Generator=thrust::THRUST_200802_SM_860_NS::detail::fill_functor<int>]" at line 46 of C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.9/include\thrust/detail/generate.inl
7>            instantiation of "void thrust::THRUST_200802_SM_860_NS::generate(const thrust::THRUST_200802_SM_860_NS::detail::execution_policy_base<DerivedPolicy> &, ForwardIterator, ForwardIterator, Generator) [with DerivedPolicy=thrust::THRUST_200802_SM_860_NS::cuda_cub::tag, ForwardIterator=thrust::THRUST_200802_SM_860_NS::detail::normal_iterator<thrust::THRUST_200802_SM_860_NS::device_ptr<int>>, Generator=thrust::THRUST_200802_SM_860_NS::detail::fill_functor<int>]" at line 54 of C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.9/include\thrust/system/detail/generic/fill.h
7>            instantiation of "void thrust::THRUST_200802_SM_860_NS::system::detail::generic::fill(thrust::THRUST_200802_SM_860_NS::execution_policy<DerivedPolicy> &, ForwardIterator, ForwardIterator, const T &) [with DerivedPolicy=thrust::THRUST_200802_SM_860_NS::cuda_cub::tag, ForwardIterator=thrust::THRUST_200802_SM_860_NS::detail::normal_iterator<thrust::THRUST_200802_SM_860_NS::device_ptr<int>>, T=int]" at line 46 of C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.9/include\thrust/detail/fill.inl
7>            instantiation of "void thrust::THRUST_200802_SM_860_NS::fill(const thrust::THRUST_200802_SM_860_NS::detail::execution_policy_base<DerivedPolicy> &, ForwardIterator, ForwardIterator, const T &) [with DerivedPolicy=thrust::THRUST_200802_SM_860_NS::cuda_cub::tag, ForwardIterator=thrust::THRUST_200802_SM_860_NS::detail::normal_iterator<thrust::THRUST_200802_SM_860_NS::device_ptr<int>>, T=int]" at line 67 of C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.9/include\thrust/detail/fill.inl
7>            instantiation of "void thrust::THRUST_200802_SM_860_NS::fill(ForwardIterator, ForwardIterator, const T &) [with ForwardIterator=thrust::THRUST_200802_SM_860_NS::detail::normal_iterator<thrust::THRUST_200802_SM_860_NS::device_ptr<int>>, T=int]" at line 887 of C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.9/include\thrust/detail/vector_base.inl
7>            instantiation of "void thrust::THRUST_200802_SM_860_NS::detail::vector_base<T, Alloc>::fill_insert(thrust::THRUST_200802_SM_860_NS::detail::vector_base<T, Alloc>::iterator, thrust::THRUST_200802_SM_860_NS::detail::vector_base<T, Alloc>::size_type, const T &) [with T=int, Alloc=thrust::THRUST_200802_SM_860_NS::device_allocator<int>]" at line 629 of C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.9/include\thrust/detail/vector_base.inl
7>            instantiation of "void thrust::THRUST_200802_SM_860_NS::detail::vector_base<T, Alloc>::insert(thrust::THRUST_200802_SM_860_NS::detail::vector_base<T, Alloc>::iterator, thrust::THRUST_200802_SM_860_NS::detail::vector_base<T, Alloc>::size_type, const T &) [with T=int, Alloc=thrust::THRUST_200802_SM_860_NS::device_allocator<int>]" at line 675 of D:/workspace/cupoch/third_party\flann/algorithms/kdtree_cuda_builder.h
7>

Do you have any idea about this?
Thank you.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions