CUDA 12.4 nvcc and GCC 14.1 incompatibility?

When I try compiling this, nvcc gives:

nvcc -O3 -o binsimCUDA binsim.cu
/usr/include/c++/14.1.0/x86_64-slackware-linux/bits/c++config.h(827): error: user-defined literal operator not found
    typedef __decltype(0.0bf16) __bfloat16_t;
                       ^

/usr/include/c++/14.1.0/type_traits(529): error: type name is not allowed
      : public __bool_constant<__is_array(_Tp)>
                                          ^

/usr/include/c++/14.1.0/type_traits(529): error: identifier "__is_array" is undefined
      : public __bool_constant<__is_array(_Tp)>
                               ^

/usr/include/c++/14.1.0/type_traits(581): error: type name is not allowed
      : public __bool_constant<__is_member_object_pointer(_Tp)>
                                                          ^

/usr/include/c++/14.1.0/type_traits(581): error: identifier "__is_member_object_pointer" is undefined
      : public __bool_constant<__is_member_object_pointer(_Tp)>
                               ^

/usr/include/c++/14.1.0/type_traits(603): error: type name is not allowed
      : public __bool_constant<__is_member_function_pointer(_Tp)>
                                                            ^

/usr/include/c++/14.1.0/type_traits(603): error: identifier "__is_member_function_pointer" is undefined
      : public __bool_constant<__is_member_function_pointer(_Tp)>
                               ^

/usr/include/c++/14.1.0/type_traits(695): error: type name is not allowed
      : public __bool_constant<__is_reference(_Tp)>
                                              ^

/usr/include/c++/14.1.0/type_traits(695): error: identifier "__is_reference" is undefined
      : public __bool_constant<__is_reference(_Tp)>
                               ^

/usr/include/c++/14.1.0/type_traits(731): error: type name is not allowed
      : public __bool_constant<__is_object(_Tp)>
                                           ^

/usr/include/c++/14.1.0/type_traits(731): error: identifier "__is_object" is undefined
      : public __bool_constant<__is_object(_Tp)>
                               ^

/usr/include/c++/14.1.0/type_traits(760): error: type name is not allowed
      : public __bool_constant<__is_member_pointer(_Tp)>
                                                   ^

/usr/include/c++/14.1.0/type_traits(760): error: identifier "__is_member_pointer" is undefined
      : public __bool_constant<__is_member_pointer(_Tp)>
                               ^

/usr/include/c++/14.1.0/type_traits(3247): error: type name is not allowed
    inline constexpr bool is_array_v = __is_array(_Tp);
                                                  ^

/usr/include/c++/14.1.0/type_traits(3271): error: type name is not allowed
      __is_member_object_pointer(_Tp);
                                 ^

/usr/include/c++/14.1.0/type_traits(3281): error: type name is not allowed
      __is_member_function_pointer(_Tp);
                                   ^

/usr/include/c++/14.1.0/type_traits(3298): error: type name is not allowed
    inline constexpr bool is_reference_v = __is_reference(_Tp);
                                                          ^

/usr/include/c++/14.1.0/type_traits(3315): error: type name is not allowed
    inline constexpr bool is_object_v = __is_object(_Tp);
                                                    ^

/usr/include/c++/14.1.0/type_traits(3328): error: type name is not allowed
    inline constexpr bool is_member_pointer_v = __is_member_pointer(_Tp);
                                                                    ^

/usr/include/c++/14.1.0/bits/utility.h(237): error: __type_pack_element is not a template
      { using type = __type_pack_element<_Np, _Types...>; };
                     ^

20 errors detected in the compilation of "binsim.cu".
$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Tue_Feb_27_16:19:38_PST_2024
Cuda compilation tools, release 12.4, V12.4.99
Build cuda_12.4.r12.4/compiler.33961263_0

According to the 12.4update1 Install Guide, gcc 6.x - 13.2 is supported.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.