kaldi-asr / kaldi

kaldi-asr/kaldi is the official location of the Kaldi project.
http://kaldi-asr.org
Other
14.03k stars 5.3k forks source link

error: argument list for class template "std::pair" is missing template<typename _T1, typename _T2> pair(_T1, _T2) -> pair<_T1, _T2>; #4862

Open jiapei100 opened 1 year ago

jiapei100 commented 1 year ago

Hi, everyone:

I failed to build kaldi commit 71f38e62cad01c3078555bfe78d0f3a527422d75 on Ubuntu 22.04, with gcc 11.3, cuda 12.2

➜  ~ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.2 LTS
Release:    22.04
Codename:   jammy
➜  ~ gcc --version
gcc (Ubuntu 11.3.0-1ubuntu1~22.04.1) 11.3.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[ 20%] Building NVCC (Device) object src/cudamatrix/CMakeFiles/cuda_compile_1.dir/cuda_compile_1_generated_cu-kernels.cu.o
cd ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir && /usr/local/bin/cmake -E make_directory ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//.
cd ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir && /usr/local/bin/cmake -D verbose:BOOL=ON -D build_configuration:STRING=Release -D generated_file:STRING=....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//./cuda_compile_1_generated_[cu-kernels.cu](http://cu-kernels.cu/).o -D generated_cubin_file:STRING=....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//./cuda_compile_1_generated_[cu-kernels.cu](http://cu-kernels.cu/).o.cubin.txt -P ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_[cu-kernels.cu](http://cu-kernels.cu/).o.Release.cmake
-- Removing ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//./cuda_compile_1_generated_cu-kernels.cu.o
/usr/local/bin/cmake -E rm -f ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//./cuda_compile_1_generated_cu-kernels.cu.o
-- Generating dependency file: ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.NVCC-depend
/usr/local/cuda/bin/nvcc -M -D__CUDACC__ ....../kaldi/src/cudamatrix/cu-kernels.cu -o ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.NVCC-depend -ccbin /usr/bin/cc -m64 -Dcuda_compile_1_EXPORTS -DHAVE_CLAPACK=1 -DHAVE_CUDA=1 -DCUDA_API_PER_THREAD_DEFAULT_STREAM=1 -DKALDI_NO_PORTAUDIO=1 -Xcompiler ,\"-std=c++17\",\"-fPIC\",\"-fPIC\",\"-O3\",\"-DNDEBUG\" --default-stream=per-thread -std=c++14 -DNVCC -I....../kaldi/src/cudamatrix/.. -I/usr/local/cuda/include -I....../kaldi/build/_deps/openfst-src/src/include -I....../kaldi/tools/CLAPACK -I/usr/local/include
-- Generating temporary cmake readable file: ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.depend.tmp
/usr/local/bin/cmake -D input_file:FILEPATH=....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.NVCC-depend -D output_file:FILEPATH=....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.depend.tmp -D verbose=ON -P /usr/local/share/cmake-3.26/Modules/FindCUDA/make2cmake.cmake
-- Copy if different ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.depend.tmp to ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.depend
/usr/local/bin/cmake -E copy_if_different ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.depend.tmp ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.depend
-- Removing ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.depend.tmp and ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.NVCC-depend
/usr/local/bin/cmake -E rm -f ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.depend.tmp ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//cuda_compile_1_generated_cu-kernels.cu.o.NVCC-depend
-- Generating ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//./cuda_compile_1_generated_cu-kernels.cu.o
/usr/local/cuda/bin/nvcc ....../kaldi/src/cudamatrix/cu-kernels.cu -c -o ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//./cuda_compile_1_generated_cu-kernels.cu.o -ccbin /usr/bin/cc -m64 -Dcuda_compile_1_EXPORTS -DHAVE_CLAPACK=1 -DHAVE_CUDA=1 -DCUDA_API_PER_THREAD_DEFAULT_STREAM=1 -DKALDI_NO_PORTAUDIO=1 -Xcompiler ,\"-std=c++17\",\"-fPIC\",\"-fPIC\",\"-O3\",\"-DNDEBUG\" --default-stream=per-thread -std=c++14 -DNVCC -I....../kaldi/src/cudamatrix/.. -I/usr/local/cuda/include -I....../kaldi/build/_deps/openfst-src/src/include -I....../kaldi/tools/CLAPACK -I/usr/local/include
/usr/include/c++/11/bits/stl_pair.h(460): error: argument list for class template "std::pair" is missing
    template<typename _T1, typename _T2> pair(_T1, _T2) -> pair<_T1, _T2>;
                                         ^

/usr/include/c++/11/bits/stl_pair.h(460): error: expected a ")"
    template<typename _T1, typename _T2> pair(_T1, _T2) -> pair<_T1, _T2>;
                                                 ^

/usr/include/c++/11/bits/stl_pair.h(460): error: template parameter "_T1" may not be redeclared in this scope
    template<typename _T1, typename _T2> pair(_T1, _T2) -> pair<_T1, _T2>;
                                              ^

/usr/include/c++/11/bits/stl_pair.h(460): error: expected a ";"
    template<typename _T1, typename _T2> pair(_T1, _T2) -> pair<_T1, _T2>;
                                                        ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__utility/pair.h(567): error: argument list for class template "cuda::std::__4::pair" is missing
  pair(_T1, _T2) -> pair<_T1, _T2>;
  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__utility/pair.h(567): error: expected a ")"
  pair(_T1, _T2) -> pair<_T1, _T2>;
          ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__utility/pair.h(567): error: template parameter "_T1" may not be redeclared in this scope
  pair(_T1, _T2) -> pair<_T1, _T2>;
       ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__utility/pair.h(567): error: expected a ";"
  pair(_T1, _T2) -> pair<_T1, _T2>;
                 ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/reference_wrapper.h(63): error: argument list for class template "cuda::std::__4::reference_wrapper" is missing
  reference_wrapper(_Tp&) -> reference_wrapper<_Tp>;
  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/reference_wrapper.h(63): error: expected a ")"
  reference_wrapper(_Tp&) -> reference_wrapper<_Tp>;
                       ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/reference_wrapper.h(63): error: template parameter "_Tp" may not be redeclared in this scope
  reference_wrapper(_Tp&) -> reference_wrapper<_Tp>;
                    ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/reference_wrapper.h(63): error: expected a ";"
  reference_wrapper(_Tp&) -> reference_wrapper<_Tp>;
                          ^

/usr/include/c++/11/bits/basic_string.h(6064): error: argument list for class template "std::__cxx11::basic_string" is missing
      basic_string(_InputIterator, _InputIterator, _Allocator = _Allocator())
      ^

/usr/include/c++/11/bits/basic_string.h(6064): error: expected a ")"
      basic_string(_InputIterator, _InputIterator, _Allocator = _Allocator())
                                 ^

/usr/include/c++/11/bits/basic_string.h(6064): error: template parameter "_InputIterator" may not be redeclared in this scope
      basic_string(_InputIterator, _InputIterator, _Allocator = _Allocator())
                   ^

/usr/include/c++/11/bits/basic_string.h(6065): error: expected a ";"
        -> basic_string<_CharT, char_traits<_CharT>, _Allocator>;
        ^

/usr/include/c++/11/bits/basic_string.h(6072): error: argument list for class template "std::__cxx11::basic_string" is missing
      basic_string(basic_string_view<_CharT, _Traits>, const _Allocator& = _Allocator())
      ^

/usr/include/c++/11/bits/basic_string.h(6072): error: expected a ")"
      basic_string(basic_string_view<_CharT, _Traits>, const _Allocator& = _Allocator())
                                                     ^

/usr/include/c++/11/bits/basic_string.h(6072): error: "basic_string_view" is not a function or static data member
      basic_string(basic_string_view<_CharT, _Traits>, const _Allocator& = _Allocator())
                   ^

/usr/include/c++/11/bits/basic_string.h(6078): error: argument list for class template "std::__cxx11::basic_string" is missing
      basic_string(basic_string_view<_CharT, _Traits>,
      ^

/usr/include/c++/11/bits/basic_string.h(6078): error: expected a ")"
      basic_string(basic_string_view<_CharT, _Traits>,
                                                     ^

/usr/include/c++/11/bits/basic_string.h(6078): error: "basic_string_view" is not a function or static data member
      basic_string(basic_string_view<_CharT, _Traits>,
                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(44): error: argument list for class template "cuda::std::__4::plus" is missing
  template <class ..._Tag> plus(typename _Tag::__allow_ctad...) -> plus<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(44): error: expected an identifier
  template <class ..._Tag> plus(typename _Tag::__allow_ctad...) -> plus<_Tag...>;
                                ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(44): error: expected a ";"
  template <class ..._Tag> plus(typename _Tag::__allow_ctad...) -> plus<_Tag...>;
                                                                ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(75): error: argument list for class template "cuda::std::__4::minus" is missing
  template <class ..._Tag> minus(typename _Tag::__allow_ctad...) -> minus<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(75): error: expected an identifier
  template <class ..._Tag> minus(typename _Tag::__allow_ctad...) -> minus<_Tag...>;
                                 ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(75): error: expected a ";"
  template <class ..._Tag> minus(typename _Tag::__allow_ctad...) -> minus<_Tag...>;
                                                                 ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(106): error: argument list for class template "cuda::std::__4::multiplies" is missing
  template <class ..._Tag> multiplies(typename _Tag::__allow_ctad...) -> multiplies<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(106): error: expected an identifier
  template <class ..._Tag> multiplies(typename _Tag::__allow_ctad...) -> multiplies<_Tag...>;
                                      ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(106): error: expected a ";"
  template <class ..._Tag> multiplies(typename _Tag::__allow_ctad...) -> multiplies<_Tag...>;
                                                                      ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(137): error: argument list for class template "cuda::std::__4::divides" is missing
  template <class ..._Tag> divides(typename _Tag::__allow_ctad...) -> divides<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(137): error: expected an identifier
  template <class ..._Tag> divides(typename _Tag::__allow_ctad...) -> divides<_Tag...>;
                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(137): error: expected a ";"
  template <class ..._Tag> divides(typename _Tag::__allow_ctad...) -> divides<_Tag...>;
                                                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(168): error: argument list for class template "cuda::std::__4::modulus" is missing
  template <class ..._Tag> modulus(typename _Tag::__allow_ctad...) -> modulus<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(168): error: expected an identifier
  template <class ..._Tag> modulus(typename _Tag::__allow_ctad...) -> modulus<_Tag...>;
                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(168): error: expected a ";"
  template <class ..._Tag> modulus(typename _Tag::__allow_ctad...) -> modulus<_Tag...>;
                                                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(199): error: argument list for class template "cuda::std::__4::negate" is missing
  template <class ..._Tag> negate(typename _Tag::__allow_ctad...) -> negate<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(199): error: expected an identifier
  template <class ..._Tag> negate(typename _Tag::__allow_ctad...) -> negate<_Tag...>;
                                  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(199): error: expected a ";"
  template <class ..._Tag> negate(typename _Tag::__allow_ctad...) -> negate<_Tag...>;
                                                                  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(232): error: argument list for class template "cuda::std::__4::bit_and" is missing
  template <class ..._Tag> bit_and(typename _Tag::__allow_ctad...) -> bit_and<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(232): error: expected an identifier
  template <class ..._Tag> bit_and(typename _Tag::__allow_ctad...) -> bit_and<_Tag...>;
                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(232): error: expected a ";"
  template <class ..._Tag> bit_and(typename _Tag::__allow_ctad...) -> bit_and<_Tag...>;
                                                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(259): error: argument list for class template "cuda::std::__4::bit_not" is missing
  template <class ..._Tag> bit_not(typename _Tag::__allow_ctad...) -> bit_not<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(259): error: expected an identifier
  template <class ..._Tag> bit_not(typename _Tag::__allow_ctad...) -> bit_not<_Tag...>;
                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(259): error: expected a ";"
  template <class ..._Tag> bit_not(typename _Tag::__allow_ctad...) -> bit_not<_Tag...>;
                                                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(289): error: argument list for class template "cuda::std::__4::bit_or" is missing
  template <class ..._Tag> bit_or(typename _Tag::__allow_ctad...) -> bit_or<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(289): error: expected an identifier
  template <class ..._Tag> bit_or(typename _Tag::__allow_ctad...) -> bit_or<_Tag...>;
                                  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(289): error: expected a ";"
  template <class ..._Tag> bit_or(typename _Tag::__allow_ctad...) -> bit_or<_Tag...>;
                                                                  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(320): error: argument list for class template "cuda::std::__4::bit_xor" is missing
  template <class ..._Tag> bit_xor(typename _Tag::__allow_ctad...) -> bit_xor<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(320): error: expected an identifier
  template <class ..._Tag> bit_xor(typename _Tag::__allow_ctad...) -> bit_xor<_Tag...>;
                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(320): error: expected a ";"
  template <class ..._Tag> bit_xor(typename _Tag::__allow_ctad...) -> bit_xor<_Tag...>;
                                                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(353): error: argument list for class template "cuda::std::__4::equal_to" is missing
  template <class ..._Tag> equal_to(typename _Tag::__allow_ctad...) -> equal_to<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(353): error: expected an identifier
  template <class ..._Tag> equal_to(typename _Tag::__allow_ctad...) -> equal_to<_Tag...>;
                                    ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(353): error: expected a ";"
  template <class ..._Tag> equal_to(typename _Tag::__allow_ctad...) -> equal_to<_Tag...>;
                                                                    ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(384): error: argument list for class template "cuda::std::__4::not_equal_to" is missing
  template <class ..._Tag> not_equal_to(typename _Tag::__allow_ctad...) -> not_equal_to<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(384): error: expected an identifier
  template <class ..._Tag> not_equal_to(typename _Tag::__allow_ctad...) -> not_equal_to<_Tag...>;
                                        ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(384): error: expected a ";"
  template <class ..._Tag> not_equal_to(typename _Tag::__allow_ctad...) -> not_equal_to<_Tag...>;
                                                                        ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(415): error: argument list for class template "cuda::std::__4::less" is missing
  template <class ..._Tag> less(typename _Tag::__allow_ctad...) -> less<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(415): error: expected an identifier
  template <class ..._Tag> less(typename _Tag::__allow_ctad...) -> less<_Tag...>;
                                ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(415): error: expected a ";"
  template <class ..._Tag> less(typename _Tag::__allow_ctad...) -> less<_Tag...>;
                                                                ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(446): error: argument list for class template "cuda::std::__4::less_equal" is missing
  template <class ..._Tag> less_equal(typename _Tag::__allow_ctad...) -> less_equal<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(446): error: expected an identifier
  template <class ..._Tag> less_equal(typename _Tag::__allow_ctad...) -> less_equal<_Tag...>;
                                      ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(446): error: expected a ";"
  template <class ..._Tag> less_equal(typename _Tag::__allow_ctad...) -> less_equal<_Tag...>;
                                                                      ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(477): error: argument list for class template "cuda::std::__4::greater_equal" is missing
  template <class ..._Tag> greater_equal(typename _Tag::__allow_ctad...) -> greater_equal<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(477): error: expected an identifier
  template <class ..._Tag> greater_equal(typename _Tag::__allow_ctad...) -> greater_equal<_Tag...>;
                                         ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(477): error: expected a ";"
  template <class ..._Tag> greater_equal(typename _Tag::__allow_ctad...) -> greater_equal<_Tag...>;
                                                                         ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(508): error: argument list for class template "cuda::std::__4::greater" is missing
  template <class ..._Tag> greater(typename _Tag::__allow_ctad...) -> greater<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(508): error: expected an identifier
  template <class ..._Tag> greater(typename _Tag::__allow_ctad...) -> greater<_Tag...>;
                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(508): error: expected a ";"
  template <class ..._Tag> greater(typename _Tag::__allow_ctad...) -> greater<_Tag...>;
                                                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(541): error: argument list for class template "cuda::std::__4::logical_and" is missing
  template <class ..._Tag> logical_and(typename _Tag::__allow_ctad...) -> logical_and<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(541): error: expected an identifier
  template <class ..._Tag> logical_and(typename _Tag::__allow_ctad...) -> logical_and<_Tag...>;
                                       ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(541): error: expected a ";"
  template <class ..._Tag> logical_and(typename _Tag::__allow_ctad...) -> logical_and<_Tag...>;
                                                                       ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(572): error: argument list for class template "cuda::std::__4::logical_not" is missing
  template <class ..._Tag> logical_not(typename _Tag::__allow_ctad...) -> logical_not<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(572): error: expected an identifier
  template <class ..._Tag> logical_not(typename _Tag::__allow_ctad...) -> logical_not<_Tag...>;
                                       ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(572): error: expected a ";"
  template <class ..._Tag> logical_not(typename _Tag::__allow_ctad...) -> logical_not<_Tag...>;
                                                                       ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(603): error: argument list for class template "cuda::std::__4::logical_or" is missing
  template <class ..._Tag> logical_or(typename _Tag::__allow_ctad...) -> logical_or<_Tag...>;
                           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(603): error: expected an identifier
  template <class ..._Tag> logical_or(typename _Tag::__allow_ctad...) -> logical_or<_Tag...>;
                                      ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/operations.h(603): error: expected a ";"
  template <class ..._Tag> logical_or(typename _Tag::__allow_ctad...) -> logical_or<_Tag...>;
                                                                      ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1040): error: argument list for class template "cuda::std::__4::tuple" is missing
  tuple(_Tp...) -> tuple<_Tp...>;
  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1040): error: expected a ")"
  tuple(_Tp...) -> tuple<_Tp...>;
           ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1039): error: declaration is incompatible with template parameter "_Tp" (declared at line 62 of /usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/reference_wrapper.h)
  template <class ..._Tp>
                     ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1040): error: expected a ";"
  tuple(_Tp...) -> tuple<_Tp...>;
                ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1042): error: argument list for class template "cuda::std::__4::tuple" is missing
  tuple(pair<_Tp1, _Tp2>) -> tuple<_Tp1, _Tp2>;
  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1042): error: "pair" is not a function or static data member
  tuple(pair<_Tp1, _Tp2>) -> tuple<_Tp1, _Tp2>;
        ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1044): error: argument list for class template "cuda::std::__4::tuple" is missing
  tuple(allocator_arg_t, _Alloc, _Tp...) -> tuple<_Tp...>;
  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1044): error: expected a ")"
  tuple(allocator_arg_t, _Alloc, _Tp...) -> tuple<_Tp...>;
                       ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1044): error: expected a ";"
  tuple(allocator_arg_t, _Alloc, _Tp...) -> tuple<_Tp...>;
                                         ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1046): error: argument list for class template "cuda::std::__4::tuple" is missing
  tuple(allocator_arg_t, _Alloc, pair<_Tp1, _Tp2>) -> tuple<_Tp1, _Tp2>;
  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1046): error: expected a ")"
  tuple(allocator_arg_t, _Alloc, pair<_Tp1, _Tp2>) -> tuple<_Tp1, _Tp2>;
                       ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1045): error: declaration is incompatible with template parameter "_Tp" (declared at line 1043)
  template <class _Alloc, class _Tp1, class _Tp2>
                                ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1045): error: too many template parameters -- does not match previous declaration (declared at line 1043)
  template <class _Alloc, class _Tp1, class _Tp2>
                                            ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1046): error: expected a ";"
  tuple(allocator_arg_t, _Alloc, pair<_Tp1, _Tp2>) -> tuple<_Tp1, _Tp2>;
                                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1048): error: argument list for class template "cuda::std::__4::tuple" is missing
  tuple(allocator_arg_t, _Alloc, tuple<_Tp...>) -> tuple<_Tp...>;
  ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1048): error: expected a ")"
  tuple(allocator_arg_t, _Alloc, tuple<_Tp...>) -> tuple<_Tp...>;
                       ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1047): error: declaration is incompatible with template parameter "_Tp1" (declared at line 1045)
  template <class _Alloc, class ..._Tp>
                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1047): error: too few template parameters -- does not match previous declaration (declared at line 1045)
  template <class _Alloc, class ..._Tp>
                                   ^

/usr/local/cuda/include/cuda/std/detail/libcxx/include/__functional/../__functional/../tuple(1048): error: expected a ";"
  tuple(allocator_arg_t, _Alloc, tuple<_Tp...>) -> tuple<_Tp...>;
                                                ^

98 errors detected in the compilation of "....../kaldi/src/cudamatrix/cu-kernels.cu".
-- Removing ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//./cuda_compile_1_generated_cu-kernels.cu.o
/usr/local/bin/cmake -E rm -f ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//./cuda_compile_1_generated_cu-kernels.cu.o
CMake Error at cuda_compile_1_generated_cu-kernels.cu.o.Release.cmake:280 (message):
  Error generating file
  ....../kaldi/build/src/cudamatrix/CMakeFiles/cuda_compile_1.dir//./cuda_compile_1_generated_cu-kernels.cu.o

make[2]: *** [src/cudamatrix/CMakeFiles/kaldi-cudamatrix.dir/build.make:679: src/cudamatrix/CMakeFiles/cuda_compile_1.dir/cuda_compile_1_generated_cu-kernels.cu.o] Error 1
make[2]: Leaving directory '....../kaldi/build'
make[1]: *** [CMakeFiles/Makefile2:6283: src/cudamatrix/CMakeFiles/kaldi-cudamatrix.dir/all] Error 2
make[1]: Leaving directory '....../kaldi/build'
make: *** [Makefile:149: all] Error 2

Can anybody help to check what happened?

Cheers Pei