WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
296737
[GTK][WPE] Build broken with libwebrtc enabled and gcc12
https://bugs.webkit.org/show_bug.cgi?id=296737
Summary
[GTK][WPE] Build broken with libwebrtc enabled and gcc12
Miguel Gomez
Reported
2025-07-31 05:08:54 PDT
When enabling libwebrtc and trying to build with gcc12, there are several errors happening: ---------------------------------------------- ERROR 1: happens for Network, PayloadTypeSuggester and SctpTransport classes in libwebrtc: Source/ThirdParty/libwebrtc/Source/webrtc/p2p/base/port_interface.h:58:26: error: declaration of 'virtual const webrtc::Network* webrtc::PortInterface::Network() const' changes meaning of 'Network' [-fpermissive] 58 | virtual const Network* Network() const = 0; | ^~~~~~~ In file included from Source/ThirdParty/libwebrtc/Source/webrtc/p2p/base/port_interface.h:29: Source/ThirdParty/libwebrtc/Source/webrtc/rtc_base/network.h:197:18: note: 'Network' declared here as 'class webrtc::Network' 197 | class RTC_EXPORT Network { | ^~~~~~~ ---------------------------------------------- ERROR 2 In file included from /host/home/magomez/webkit/WebKit/Source/ThirdParty/libwebrtc/Source/webrtc/video/screenshare_loopback.cc:30: /host/home/magomez/webkit/WebKit/Source/ThirdParty/libwebrtc/Source/webrtc/test/gtest.h:18:10: fatal error: gtest/gtest-spi.h: No such file or directory 18 | #include <gtest/gtest-spi.h> | ^~~~~~~~~~~~~~~~~~~ ------------------------------------------- ERROR 3 In file included from WTF/Headers/wtf/MallocCommon.h:29, from WTF/Headers/wtf/FastMalloc.h:26, from Source/WebCore/config.h:47, from Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDtlsTransportBackend.cpp:25, from WebCore/DerivedSources/unified-sources/UnifiedSource-f8afad56-37.cpp:1: WTF/Headers/wtf/StdLibExtras.h: In instantiation of 'constexpr typename std::remove_reference<_Arg>::type&& std::move(T&&) [with WTF::CheckMoveParameterTag <anonymous> = WTF::CheckMoveParameter; T = const WTF::String&; typename remove_reference<_Arg>::type = const WTF::String]': Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:785:18: required from 'WebCore::LibWebRTCMediaEndpoint::generateTransceiverStates(const WTF::Vector<WebCore::LibWebRTCMediaEndpointTransceiverState>&)::<lambda(auto:448&)> [with auto:448 = const WebCore::LibWebRTCMediaEndpointTransceiverState]' WTF/Headers/wtf/Vector.h:1924:64: required from 'static void WTF::Mapper<MapFunction, DestinationVectorType, SourceType>::map(DestinationVectorType&, SourceType&&, const MapFunction&) [with MapFunction = WebCore::LibWebRTCMediaEndpoint::generateTransceiverStates(const WTF::Vector<WebCore::LibWebRTCMediaEndpointTransceiverState>&)::<lambda(auto:448&)>; DestinationVectorType = WTF::Vector<WebCore::PeerConnectionBackend::TransceiverState>; SourceType = const WTF::Vector<WebCore::LibWebRTCMediaEndpointTransceiverState>&]' WTF/Headers/wtf/Vector.h:1948:65: required from 'WTF::Vector<typename std::invoke_result<MapFunction, typename WTF::CollectionInspector<SourceType>::SourceItemType&>::type, inlineCapacity, OverflowHandler, minCapacity> WTF::map(SourceType&, MapFunction&&) [with unsigned int inlineCapacity = 0; OverflowHandler = CrashOnOverflow; unsigned int minCapacity = 16; MapFunction = WebCore::LibWebRTCMediaEndpoint::generateTransceiverStates(const WTF::Vector<WebCore::LibWebRTCMediaEndpointTransceiverState>&)::<lambda(auto:448&)>; SourceType = const Vector<WebCore::LibWebRTCMediaEndpointTransceiverState>; typename std::invoke_result<MapFunction, typename CollectionInspector<SourceType>::SourceItemType&>::type = WebCore::PeerConnectionBackend::TransceiverState; typename CollectionInspector<SourceType>::SourceItemType = WebCore::LibWebRTCMediaEndpointTransceiverState]' Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:784:20: required from here WTF/Headers/wtf/StdLibExtras.h:839:51: error: static assertion failed: T is const qualified. 839 | static_assert(!is_const<NonRefQualifiedType>::value, "T is const qualified.");
Attachments
Add attachment
proposed patch, testcase, etc.
Miguel Gomez
Comment 1
2025-07-31 05:27:08 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/48769
EWS
Comment 2
2025-07-31 23:52:41 PDT
Committed
298117@main
(06e3689f964e): <
https://commits.webkit.org/298117@main
> Reviewed commits have been landed. Closing PR #48769 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug