-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Description
Encountered a few compiler errors w/ arm64 (m3) Xcode 14.5. Attempted to remove the RUST bindings so I can compile w/ C++17.
How did you guys build this on OSX/WIN ? Should I create a PR if I get it building w/o RUST (If possible)?
Have you tested as a pure static library?
MacBook-Pro:client-sdk-cpp future$ ./build.sh debug
....
cargo:warning=__expand_to_true<__enable_if_t<_Pred::value>...> __and_helper(int);
cargo:warning= ^
cargo:warning=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/c++/v1/__type_traits/conjunction.h:38:39: note: while substituting explicitly-specified template arguments into function template '__and_helper'
cargo:warning=using _And _LIBCPP_NODEBUG = decltype(std::__and_helper<_Pred...>(0));
cargo:warning= ^
cargo:warning=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/c++/v1/__memory/pointer_traits.h:200:5: note: (skipping 6 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
cargo:warning= _And<is_class<_Pointer>, _IsFancyPointer<_Pointer> >::value
cargo:warning= ^
cargo:warning=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/c++/v1/__algorithm/copy_move_common.h:108:24: note: in instantiation of function template specialization 'std::__unwrap_range<rust::Slice<unsigned char>::iterator, rust::Slice<unsigned char>::iterator>' requested here
cargo:warning= auto __range = std::__unwrap_range(__first, std::move(__last));
cargo:warning= ^
cargo:warning=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/c++/v1/__algorithm/copy_move_common.h:133:15: note: in instantiation of function template specialization 'std::__unwrap_and_dispatch<std::__overload<std::__copy_loop<std::_ClassicAlgPolicy>, std::__copy_trivial>, rust::Slice<unsigned char>::iterator, rust::Slice<unsigned char>::iterator, std::back_insert_iterator<std::vector<unsigned char>>, 0>' requested here
cargo:warning= return std::__unwrap_and_dispatch<_Algorithm>(std::move(__first), std::move(__last), std::move(__out_first));
cargo:warning= ^
cargo:warning=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/c++/v1/__algorithm/copy.h:110:15: note: in instantiation of function template specialization 'std::__dispatch_copy_or_move<std::_ClassicAlgPolicy, std::__copy_loop<std::_ClassicAlgPolicy>, std::__copy_trivial, rust::Slice<unsigned char>::iterator, rust::Slice<unsigned char>::iterator, std::back_insert_iterator<std::vector<unsigned char>>>' requested here
cargo:warning= return std::__dispatch_copy_or_move<_AlgPolicy, __copy_loop<_AlgPolicy>, __copy_trivial>(
cargo:warning= ^
cargo:warning=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/c++/v1/__algorithm/copy.h:117:15: note: in instantiation of function template specialization 'std::__copy<std::_ClassicAlgPolicy, rust::Slice<unsigned char>::iterator, rust::Slice<unsigned char>::iterator, std::back_insert_iterator<std::vector<unsigned char>>>' requested here
cargo:warning= return std::__copy<_ClassicAlgPolicy>(__first, __last, __result).second;
cargo:warning= ^
cargo:warning=./include/livekit/frame_cryptor.h:51:10: note: in instantiation of function template specialization 'std::copy<rust::Slice<unsigned char>::iterator, std::back_insert_iterator<std::vector<unsigned char>>>' requested here
cargo:warning= std::copy(key.begin(), key.end(), std::back_inserter(key_vec));
cargo:warning= ^
cargo:warning=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/c++/v1/__memory/pointer_traits.h:38:8: note: template is declared here
cargo:warning=struct __pointer_traits_element_type;
cargo:warning= ^
cargo:warning=2 errors generated.
exit status: 0
exit status: 0
exit status: 1
cargo:warning=ToolExecError: command did not execute successfully (status code exit status: 1): env -u IPHONEOS_DEPLOYMENT_TARGET LC_ALL="C" "c++" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "-gdwarf-2" "-fno-omit-frame-pointer" "--target=arm64-apple-macosx" "-mmacosx-version-min=14.5" "-I" "/path/to/livekit/client-sdk-cpp/client-sdk-rust/target/debug/build/webrtc-sys-xxxx/out/cxxbridge/include" "-I" "/path/to/livekit/client-sdk-cpp/client-sdk-rust/target/debug/build/webrtc-sys-xxxx/out/cxxbridge/crate" "-I" "./include" "-I" "/path/to/livekit/client-sdk-cpp/client-sdk-rust/target/debug/build/scratch-xxxx/out/livekit_webrtc/livekit/mac-arm64-release-webrtc-ebd5a9f-2/mac-arm64-release/include" "-I" "/path/to/livekit/client-sdk-cpp/client-sdk-rust/target/debug/build/scratch-xxxx/out/livekit_webrtc/livekit/mac-arm64-release-webrtc-ebd5a9f-2/mac-arm64-release/include/third_party/abseil-cpp/" "-I" "/path/to/livekit/client-sdk-cpp/client-sdk-rust/target/debug/build/scratch-xxxx/out/livekit_webrtc/livekit/mac-arm64-release-webrtc-ebd5a9f-2/mac-arm64-release/include/third_party/libyuv/include/" "-I" "/path/to/livekit/client-sdk-cpp/client-sdk-rust/target/debug/build/scratch-xxxx/out/livekit_webrtc/livekit/mac-arm64-release-webrtc-ebd5a9f-2/mac-arm64-release/include/third_party/libc++/" "-I" "/path/to/livekit/client-sdk-cpp/client-sdk-rust/target/debug/build/scratch-xxxx/out/livekit_webrtc/livekit/mac-arm64-release-webrtc-ebd5a9f-2/mac-arm64-release/include/sdk/objc" "-I" "/path/to/livekit/client-sdk-cpp/client-sdk-rust/target/debug/build/scratch-xxxx/out/livekit_webrtc/livekit/mac-arm64-release-webrtc-ebd5a9f-2/mac-arm64-release/include/sdk/objc/base" "-isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk" "-stdlib=libc++" "-std=c++20" "-Wno-nullability-completeness" "-DWEBRTC_APM_DEBUG_DUMP=0" "-D__STDC_CONSTANT_MACROS" "-D__STDC_FORMAT_MACROS" "-D_FORTIFY_SOURCE=2" "-D__ARM_NEON__=1" "-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_NONE" "-DNDEBUG" "-DNVALGRIND" "-DDYNAMIC_ANNOTATIONS_ENABLED=0" "-DWEBRTC_ENABLE_PROTOBUF=0" "-DWEBRTC_STRICT_FIELD_TRIALS=0" "-DWEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE" "-DRTC_USE_LIBAOM_AV1_ENCODER" "-DRTC_ENABLE_VP9" "-DRTC_ENABLE_H265" "-DRTC_DAV1D_IN_INTERNAL_DECODER_FACTORY" "-DWEBRTC_HAVE_SCTP" "-DWEBRTC_USE_H264" "-DWEBRTC_ARCH_ARM64" "-DWEBRTC_HAS_NEON" "-DWEBRTC_LIBRARY_IMPL" "-DPROTOBUF_ENABLE_DEBUG_LOGGING_MAY_LEAK_PII=0" "-DWEBRTC_ENABLE_SYMBOL_EXPORT" "-DWEBRTC_ENABLE_AVX2" "-DWEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=0" "-DWEBRTC_POSIX" "-DWEBRTC_MAC" "-DWEBRTC_ALLOW_DEPRECATED_NAMESPACES" "-DABSL_ALLOCATOR_NOTHROW=1" "-DCHROMIUM" "-DLIBYUV_DISABLE_SME" "-DLIBYUV_DISABLE_LSX" "-DLIBYUV_DISABLE_LASX" "-DLIVEKIT_TEST" "-o" "/path/to/livekit/client-sdk-cpp/client-sdk-rust/target/debug/build/webrtc-sys-xxxx/out/0602fb52cb66f316-frame_cryptor.o" "-c" "src/frame_cryptor.cpp"
CMake Error at run_cargo.cmake:24 (message):
cargo build failed with code: 101
make[2]: *** [CMakeFiles/build_rust_ffi] Error 1
make[1]: *** [CMakeFiles/build_rust_ffi.dir/all] Error 2
make: *** [all] Error 2
Metadata
Metadata
Assignees
Labels
No labels