oneapi-src / oneDPL

oneAPI DPC++ Library (oneDPL) https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/dpc-library.html
Apache License 2.0
721 stars 113 forks source link

use onedpl on macos 14.3 (23D2057) with M3 chip #1658

Closed dfldylan closed 2 months ago

dfldylan commented 3 months ago

it says /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/internal/common_config.h:20:6: error: "oneDPL requires the C++ language version not less than C++17"

But AppleClang 15 supports c++17 (maybe)

Project: https://github.com/InteractiveComputerGraphics/SPlisHSPlasH

dylan@dylans-Macbook-Air-3179 build % cmake -DCMAKE_BUILD_TYPE=Release -DUSE_PYTHON_BINDINGS=Off -DCMAKE_C_FLAGS="$CPPFLAGS" -DCMAKE_CXX_FLAGS="$CPPFLAGS" -DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS" ..
CMake Deprecation Warning at CMakeLists.txt:4 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is AppleClang 15.0.0.15000309
-- The CXX compiler identification is AppleClang 15.0.0.15000309
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- If your CPU does not support AVX, turn off the USE_AVX flag.
-- Found OpenMP_C: -Xclang -fopenmp (found version "5.0")
-- Found OpenMP_CXX: -Xclang -fopenmp (found version "5.0")
-- Found OpenMP: TRUE (found version "5.0")
-- Build type: Release
CMake Deprecation Warning at extern/glfw/CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Using Cocoa for window creation
-- Found Eigen3: /Users/dylan/Downloads/SPlisHSPlasH/extern/eigen (Required is at least version "2.91.0")
-- oneDPL: ONEDPL_PAR_BACKEND=tbb, disable OpenMP backend
-- Performing Test _fsycl_option
-- Performing Test _fsycl_option - Success
-- Found OpenGL: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/System/Library/Frameworks/OpenGL.framework
-- Configuring done (1.3s)
-- Generating done (0.1s)
-- Build files have been written to: /Users/dylan/Downloads/SPlisHSPlasH/build
dylan@dylans-Macbook-Air-3179 build % make
[  1%] Creating directories for 'Ext_NeighborhoodSearch'
[  2%] Performing download step (git clone) for 'Ext_NeighborhoodSearch'
正克隆到 'Ext_NeighborhoodSearch'...
HEAD 目前位于 7c5280b Set parallel execution policy
[  3%] Performing update step for 'Ext_NeighborhoodSearch'
[  3%] No patch step for 'Ext_NeighborhoodSearch'
[  3%] Performing configure step for 'Ext_NeighborhoodSearch'
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is AppleClang 15.0.0.15000309
-- The CXX compiler identification is AppleClang 15.0.0.15000309
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Could NOT find OpenMP_C (missing: OpenMP_C_FLAGS OpenMP_C_LIB_NAMES) 
-- Found OpenMP_CXX: -Xclang -fopenmp (found version "5.0")
-- Could NOT find OpenMP (missing: OpenMP_C_FOUND) (found version "5.0")
-- oneDPL: ONEDPL_PAR_BACKEND=tbb, disable OpenMP backend
-- Performing Test _fsycl_option
-- Performing Test _fsycl_option - Success
-- Configuring done (0.7s)
-- Generating done (0.0s)
-- Build files have been written to: /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch-build
[  3%] Performing build step for 'Ext_NeighborhoodSearch'
[ 50%] Building CXX object CMakeFiles/CompactNSearch.dir/src/CompactNSearch.cpp.o
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:19:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/internal/common_config.h:20:6: error: "oneDPL requires the C++ language version not less than C++17"
#    error "oneDPL requires the C++ language version not less than C++17"
     ^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:24:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_fwd.h:20:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_defs.h:21:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/utils.h:534:8: error: redefinition of '__is_pointer_to_const_member_impl<_R (_U::*)(_Args...) const noexcept>'
struct __is_pointer_to_const_member_impl<_R (_U::*)(_Args...) const noexcept> : ::std::true_type
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/utils.h:529:8: note: previous definition is here
struct __is_pointer_to_const_member_impl<_R (_U::*)(_Args...) const> : ::std::true_type
       ^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:70:60: error: no template named 'index_sequence' in namespace 'std'; did you mean 'tbb::detail::index_sequence'?
get_tuple_tail_impl(const ::std::tuple<T1, T...>& t, const ::std::index_sequence<indices...>&)
                                                           ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:94:34: note: 'tbb::detail::index_sequence' declared here
template<std::size_t... S> class index_sequence {};
                                 ^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:79:64: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
    return oneapi::dpl::__internal::get_tuple_tail_impl(other, ::std::make_index_sequence<sizeof...(T)>());
                                                               ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:228:37: error: no template named 'index_sequence' in namespace 'std'; did you mean 'tbb::detail::index_sequence'?
map_tuple_impl(MakeTupleF mtf, F f, ::std::index_sequence<indices...>, T... in)
                                    ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:94:34: note: 'tbb::detail::index_sequence' declared here
template<std::size_t... S> class index_sequence {};
                                 ^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:239:57: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
                                                        ::std::make_index_sequence<sizeof...(T)>(), in, rest...))
                                                        ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:242:52: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
                                                   ::std::make_index_sequence<sizeof...(T)>(), in, rest...);
                                                   ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:250:57: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
                                                        ::std::make_index_sequence<sizeof...(T)>(), in, rest...))
                                                        ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:253:52: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
                                                   ::std::make_index_sequence<sizeof...(T)>(), in, rest...);
                                                   ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:309:5: error: class member cannot be redeclared
    get() const& -> decltype(get_impl<I>()(*this))
    ^
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:302:5: note: previous definition is here
    get() & -> decltype(get_impl<I>()(*this))
    ^
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:323:5: error: class member cannot be redeclared
    get() const&& -> decltype(get_impl<I>()(::std::move(*this)))
    ^
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:316:5: note: previous definition is here
    get() && -> decltype(get_impl<I>()(::std::move(*this)))
    ^
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:441:71: error: no template named 'index_sequence' in namespace 'std'; did you mean 'tbb::detail::index_sequence'?
    to_std_tuple(const oneapi::dpl::__internal::tuple<U1, U...>& __t, ::std::index_sequence<_Ip...>)
                                                                      ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:94:34: note: 'tbb::detail::index_sequence' declared here
template<std::size_t... S> class index_sequence {};
                                 ^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:360:36: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
        return to_std_tuple(*this, ::std::make_index_sequence<__tuple_size>());
                                   ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:24:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/tuple_impl.h:368:66: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
        return to_std_tuple(static_cast<tuple<U1, U...>>(*this), ::std::make_index_sequence<__tuple_size>());
                                                                 ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:71:39: error: no template named 'index_sequence' in namespace 'std'; did you mean 'tbb::detail::index_sequence'?
    operator()(const _TupleType& __t, ::std::index_sequence<_Ip...>)
                                      ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:94:34: note: 'tbb::detail::index_sequence' declared here
template<std::size_t... S> class index_sequence {};
                                 ^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:104:57: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
        return __make_references<reference>()(__my_it_, ::std::make_index_sequence<__num_types>());
                                                        ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:293:72: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
                                                                       ::std::make_index_sequence<__num_types>());
                                                                       ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/src/CompactNSearch.cpp:2:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch:1:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/CompactNSearch.h:3:
In file included from /Users/dylan/Downloads/SPlisHSPlasH/build/extern/CompactNSearch/src/Ext_NeighborhoodSearch/include/Config.h:18:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/execution:65:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/glue_execution_defs.h:59:
In file included from /opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/algorithm_impl.h:33:
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:611:5: error: 'auto' return without trailing return type; deduced return types are a C++14 extension
    auto
    ^
/opt/homebrew/Cellar/onedpl/2022.0.0/include/oneapi/dpl/pstl/iterator_impl.h:917:60: error: no template named 'make_index_sequence' in namespace 'std'; did you mean 'tbb::detail::make_index_sequence'?
    -> decltype(map_tuple_impl(make_zipiterator_functor{}, ::std::make_index_sequence<sizeof...(T)>(), in, rest...))
                                                           ^~~~~~~
/opt/homebrew/include/tbb/../oneapi/tbb/detail/_template_helpers.h:105:1: note: 'tbb::detail::make_index_sequence' declared here
using make_index_sequence = typename make_index_sequence_impl<N>::type;
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[5]: *** [CMakeFiles/CompactNSearch.dir/src/CompactNSearch.cpp.o] Error 1
make[4]: *** [CMakeFiles/CompactNSearch.dir/all] Error 2
make[3]: *** [all] Error 2
make[2]: *** [extern/CompactNSearch/src/Ext_NeighborhoodSearch-stamp/Ext_NeighborhoodSearch-build] Error 2
make[1]: *** [CMakeFiles/Ext_NeighborhoodSearch.dir/all] Error 2
make: *** [all] Error 2
dylan@dylans-Macbook-Air-3179 build % 
dmitriy-sobolev commented 3 months ago

Hi, @dfldylan. Passing -DCMAKE_CXX_STANDARD=17 or newer standard should fix your issue.

When I ran this program on MacOS 14 with Apple clang version 15.0.0:

// clang++ std.cpp -o std && ./std

#include <iostream>

int main() {
    // C++17 or later
    #if __cplusplus >= 201703L
        std::cout << "C++17 or later" << std::endl;
    // C++14
    #elif __cplusplus >= 201402L
        std::cout << "C++14" << std::endl;
    // C++11
    #elif __cplusplus >= 201103L
        std::cout << "C++11" << std::endl;
    // C++98 or C++03
    #elif __cplusplus >= 199711L
        std::cout << "C++98 or C++03" << std::endl;
    #else
        std::cout << "Pre-standard C++" << std::endl;
    #endif

    return 0;
}

I got C++98 or C++03, so it seems Apple Clang uses older C++ standards by default.

dfldylan commented 3 months ago

Thank you for your answer, but it doesn't work.

Maybe it is the issue of SPlisHSPlasH, I'll send there again

dmitriy-sobolev commented 3 months ago

It looks like a symptom that the standard version is overridden inside SPlisHSPLasH CMake. I hope the maintainers will help you clarify it in the newly created issue.

dmitriy-sobolev commented 2 months ago

Hi @dfldylan. I've seen a mention in https://github.com/InteractiveComputerGraphics/SPlisHSPlasH/issues/324 that the problem is solved. Do you still expect any fixes from oneDPL side?

dfldylan commented 2 months ago

Hi @dfldylan. I've seen a mention in InteractiveComputerGraphics/SPlisHSPlasH#324 that the problem is solved. Do you still expect any fixes from oneDPL side?

Indeed, I don't need it now. Thank you for your help. Best wishes!