NEW 212590
[GTK] error: undefined reference to 'WTF::ObjectIdentifier<WebCore::PageIdentifierType>::ObjectIdentifier() when built with GCC 7
https://bugs.webkit.org/show_bug.cgi?id=212590
Summary [GTK] error: undefined reference to 'WTF::ObjectIdentifier<WebCore::PageIdent...
efferre
Reported 2020-06-01 02:41:17 PDT
Created attachment 400726 [details] build.log.gz I get the following build failure: /var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkitgtk-2.28.2/Source/WebKit/WebProcess/Inspector/WebInspector.cpp:170: error: undefined reference to 'WTF::ObjectIdentifier<WebCore::PageIdentifierType>::ObjectIdentifier()' /var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkitgtk-2.28.2/Source/WebKit/WebProcess/Inspector/WebInspector.cpp:170: error: undefined reference to 'WTF::ObjectIdentifier<WebCore::ElementIdentifierType>::ObjectIdentifier()' /var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkitgtk-2.28.2/Source/WebKit/WebProcess/Plugins/PluginView.cpp:1393: error: undefined reference to 'WTF::ObjectIdentifier<WebCore::PageIdentifierType>::ObjectIdentifier()' /var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkitgtk-2.28.2/Source/WebKit/WebProcess/Plugins/PluginView.cpp:1393: error: undefined reference to 'WTF::ObjectIdentifier<WebCore::ElementIdentifierType>::ObjectIdentifier()' /var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkitgtk-2.28.2/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:785: error: undefined reference to 'WTF::ObjectIdentifier<WebCore::PageIdentifierType>::ObjectIdentifier()' /var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkitgtk-2.28.2/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:785: error: undefined reference to 'WTF::ObjectIdentifier<WebCore::ElementIdentifierType>::ObjectIdentifier()' /var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkitgtk-2.28.2/Source/WebKit/WebProcess/WebCoreSupport/WebContextMenuClient.cpp:70: error: undefined reference to 'WTF::ObjectIdentifier<WebCore::PageIdentifierType>::ObjectIdentifier()' /var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkitgtk-2.28.2/Source/WebKit/WebProcess/WebCoreSupport/WebContextMenuClient.cpp:70: error: undefined reference to 'WTF::ObjectIdentifier<WebCore::ElementIdentifierType>::ObjectIdentifier()' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. I am attaching a stripped build log file, the problem occurs with gcc-7 but not with gcc-8 or gcc-9
Attachments
build.log.gz (14.17 KB, application/x-gzip)
2020-06-01 02:41 PDT, efferre
no flags
Patch (12.95 KB, patch)
2020-06-20 09:15 PDT, Michael Catanzaro
no flags
Michael Catanzaro
Comment 1 2020-06-20 08:53:15 PDT
You have to set the component to WebKitGTK if you want devs to look at your bug. I'm working on a hack solution to this, but I couldn't find any way to solve this in a way that would be acceptable to upstream, so I think we just need to require GCC 8.
Michael Catanzaro
Comment 2 2020-06-20 09:15:33 PDT
Created attachment 402384 [details] Patch This is not proposed for review because it's ridiculous. I couldn't find another way, though.
Pablo Saavedra
Comment 3 2021-02-09 02:18:06 PST
(In reply to Michael Catanzaro from comment #1) > You have to set the component to WebKitGTK if you want devs to look at your > bug. > > I'm working on a hack solution to this, but I couldn't find any way to solve > this in a way that would be acceptable to upstream, so I think we just need > to require GCC 8. I suppose this is going to lost all the relevance soon in April but current agreement was to keep GCC7 as an valid compiler to build Webkit at least until the EOL of Ubuntu 18.04: (GCC 7 OR Clang 6) AND libstdc++ 7, the versions in Ubuntu 18.04, will be supported until April 2021 Ref: https://trac.webkit.org/wiki/WebKitGTK/GCCRequirement
Adrian Perez
Comment 4 2021-02-11 00:56:14 PST
FWIW, I just tried a build with GCC 7.5.0 and did not hit this issue. Could it be some GCC issue that is unpatched in the version distributed with Ubuntu?
Pablo Saavedra
Comment 5 2021-02-11 06:53:56 PST
(In reply to Adrian Perez from comment #4) > FWIW, I just tried a build with GCC 7.5.0 and did not hit this issue. > Could it be some GCC issue that is unpatched in the version distributed > with Ubuntu? You are right. I saw the build working fine in https://build-webkit.igalia.com/builders/GTK%20Linux%2064-bit%20Release%20Packaging%20Stable%20%28Ubuntu%2018.04%29?numbuilds=200. This bug originally comes from a issue in the Gentoo tracker ('WTF::ObjectIdentifier<WebCore::PageIdentifierType>::ObjectIdentifier()). I was be able to reproduce the error in Yocto (Rocko) as well using GCC7 (version 7.3). Could be that the case in Gentoo too? * https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=7.4 * https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=7.5
Pablo Saavedra
Comment 6 2021-02-11 06:56:52 PST
Note You need to log in before you can comment on or make changes to this bug.