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

tg_owt fails to build on windows-x64 #28958

Open
machfe opened this issue Feb 14, 2025 · 0 comments
Open

tg_owt fails to build on windows-x64 #28958

machfe opened this issue Feb 14, 2025 · 0 comments
Labels

Comments

@machfe
Copy link

machfe commented Feb 14, 2025

Steps to reproduce

D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): error C2676: binary '<<': 'rtc::webrtc_checks_impl::LogStreamer<>' does not define this operator or a conversion to a type acceptable to the predefined operator
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(243): note: could be 'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(const U &) const'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): note: 'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(const U &) const': could not deduce template argument for 'V'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(235): note: or       'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(U) const'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): note: 'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(U) const': could not deduce template argument for 'V'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): note: the template instantiation context (the oldest one first) is
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\modules/audio_processing/aec3/vector_math.h(63): note: see reference to function template instantiation 'rtc::ArrayView<float,-4711>::ArrayView<rtc::ArrayView<float,-4711>,0x0>(U &)' being compiled
        with
        [
            U=rtc::ArrayView<float,-4711>
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\modules/audio_processing/aec3/vector_math.h(63): note: see the first reference to 'rtc::ArrayView<float,-4711>::ArrayView' in 'webrtc::aec3::VectorMath::Sqrt'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(248): note: see reference to function template instantiation 'rtc::ArrayView<float,-4711>::ArrayView<T>(U *,size_t)' being compiled
        with
        [
            T=float,
            U=float
        ]
[93/1381] Building CXX object CMakeFiles\tg_owt_avx2.dir\src\modules\audio_processing\aec3\fft_data_avx2.cc.obj
FAILED: CMakeFiles/tg_owt_avx2.dir/src/modules/audio_processing/aec3/fft_data_avx2.cc.obj


D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): error C2676: binary '<<': 'rtc::webrtc_checks_impl::LogStreamer<>' does not define this operator or a conversion to a type acceptable to the predefined operator
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(243): note: could be 'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(const U &) const'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): note: 'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(const U &) const': could not deduce template argument for 'V'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(235): note: or       'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(U) const'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): note: 'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(U) const': could not deduce template argument for 'V'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): note: the template instantiation context (the oldest one first) is
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\modules/audio_processing/aec3/fft_data.h(67): note: see reference to function template instantiation 'rtc::ArrayView<float,-4711>::ArrayView<rtc::ArrayView<float,-4711>,0x0>(U &)' being compiled
        with
        [
            U=rtc::ArrayView<float,-4711>
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\modules/audio_processing/aec3/fft_data.h(67): note: see the first reference to 'rtc::ArrayView<float,-4711>::ArrayView' in 'webrtc::FftData::Spectrum'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(248): note: see reference to function template instantiation 'rtc::ArrayView<float,-4711>::ArrayView<T>(U *,size_t)' being compiled
        with
        [
            T=float,
            U=float
        ]
[94/1381] Building CXX object CMakeFiles\tg_owt_avx2.dir\src\modules\audio_processing\agc2\rnn_vad\vector_math_avx2.cc.obj

D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(236): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>>'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(236): note: 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>>::LogStreamer': no overloaded function could convert all the argument types
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(280): note: could be 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>>::LogStreamer(T,const rtc::webrtc_checks_impl::LogStreamer<> *)'
        with
        [
            T=rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(236): note: 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>>::LogStreamer(T,const rtc::webrtc_checks_impl::LogStreamer<> *)': cannot convert argument 1 from 'rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kInt,int>' to 'T'
        with
        [
            T=rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(236): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(236): note: while trying to match the argument list '(rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kInt,int>, const rtc::webrtc_checks_impl::LogStreamer<> *)'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(236): note: the template instantiation context (the oldest one first) is
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\modules/audio_processing/aec3/block_buffer.h(41): note: see reference to function template instantiation 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>> rtc::webrtc_checks_impl::LogStreamer<>::operator <<<int,rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>,0x0>(U) const' being compiled
        with
        [
            U=int
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): error C2676: binary '<<': 'rtc::webrtc_checks_impl::LogStreamer<>' does not define this operator or a conversion to a type acceptable to the predefined operator
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(243): note: could be 'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(const U &) const'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): note: 'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(const U &) const': could not deduce template argument for 'V'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(235): note: or       'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(U) const'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): note: 'rtc::webrtc_checks_impl::LogStreamer<V> rtc::webrtc_checks_impl::LogStreamer<>::operator <<(U) const': could not deduce template argument for 'V'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\api/array_view.h(162): note: the template instantiation context (the oldest one first) is
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\modules/audio_processing/aec3/block.h(62): note: see reference to function template instantiation 'rtc::ArrayView<float,64>::ArrayView<_Ty>(U *,size_t)' being compiled
        with
        [
            _Ty=float,
            U=float
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\modules/audio_processing/aec3/block.h(62): note: see the first reference to 'rtc::ArrayView<float,64>::ArrayView' in 'webrtc::Block::View'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(288): error C2440: '<function-style-cast>': cannot convert from 'initializer list' to 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>,T>'
        with
        [
            T=rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(288): note: 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>,T>::LogStreamer': no overloaded function could convert all the argument types
        with
        [
            T=rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(280): note: could be 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>,T>::LogStreamer(T,const rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>> *)'
        with
        [
            T=rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(288): note: 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>,T>::LogStreamer(T,const rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>> *)': cannot convert argument 1 from 'rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kInt,int>' to 'T'
        with
        [
            T=rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(288): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(288): note: while trying to match the argument list '(rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kInt,int>, const rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>> *)'
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\rtc_base/checks.h(288): note: the template instantiation context (the oldest one first) is
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\modules/audio_processing/aec3/block_buffer.h(41): note: see reference to function template instantiation 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>,T> rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>>::operator <<<int,rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>,0x0>(U) const' being compiled
        with
        [
            T=rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>,
            U=int
        ]
D:\03_Data\BuildPath\Libraries\win64\tg_owt\src\modules/audio_processing/aec3/block_buffer.h(41): note: see the first reference to 'rtc::webrtc_checks_impl::LogStreamer<rtc::webrtc_checks_impl::Val<rtc::webrtc_checks_impl::CheckArgType::kULongLong,unsigned __int64>>::operator <<' in 'webrtc::BlockBuffer::OffsetIndex'
[107/1381] Building CXX object CMakeFiles\tg_owt.dir\src\rtc_base\async_packet_socket.cc.obj
FAILED: CMakeFiles/tg_owt.dir/src/rtc_base/async_packet_socket.cc.obj

Expected behaviour

no error

Actual behaviour

error C2676 error C2440

Operating system

windows 11

Version of Telegram Desktop

Desktop

Installation source

Static binary from official website

Crash ID

No response

Logs

@machfe machfe added the bug label Feb 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant