Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Closed
dfldylan opened this issue Jul 3, 2024 · 5 comments
Closed

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

dfldylan opened this issue Jul 3, 2024 · 5 comments

Comments

@dfldylan
Copy link

dfldylan commented Jul 3, 2024

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
Copy link
Contributor

dmitriy-sobolev commented Jul 4, 2024

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
Copy link
Author

dfldylan commented Jul 5, 2024

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

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

@dmitriy-sobolev
Copy link
Contributor

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
Copy link
Contributor

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?

@dfldylan
Copy link
Author

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!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants