Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 725408 - net-libs/webkit-gtk-2.28.2 - error: undefined reference to 'WTF::ObjectIdentifier<WebCore::PageIdentifierType>::ObjectIdentifier()' (fails to build with gcc-7)
Summary: net-libs/webkit-gtk-2.28.2 - error: undefined reference to 'WTF::ObjectIdenti...
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-05-25 21:37 UTC by Fabio Rossi
Modified: 2022-03-27 17:44 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt.gz (emerge-info.txt.gz,7.56 KB, application/x-gzip)
2020-05-25 21:38 UTC, Fabio Rossi
Details
build.log.gz (build.log.gz,14.17 KB, application/x-gzip)
2020-05-26 09:14 UTC, Fabio Rossi
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Fabio Rossi 2020-05-25 21:37:16 UTC
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.
 * ERROR: net-libs/webkit-gtk-2.28.2::gentoo failed (compile phase):
 *   ninja -v -j8 -l8 failed
 * 
 * Call stack:
 *     ebuild.sh, line  125:  Called src_compile
 *   environment, line 5029:  Called cmake-utils_src_compile
 *   environment, line 1715:  Called cmake-utils_src_make
 *   environment, line 1896:  Called _cmake_ninja_src_make
 *   environment, line  611:  Called eninja
 *   environment, line 2249:  Called die
 * The specific snippet of code:
 *       "$@" || die "${nonfatal_args[@]}" "${*} failed"
 * 
 * If you need support, post the output of `emerge --info '=net-libs/webkit-gtk-2.28.2::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=net-libs/webkit-gtk-2.28.2::gentoo'`.
 * The complete build log is located at '/var/log/portage/build/net-libs/webkit-gtk-2.28.2:20200525-203139.log.gz'.
 * For convenience, a symlink to the build log is located at '/var/tmp/portage/net-libs/webkit-gtk-2.28.2/temp/build.log.gz'.
 * The ebuild environment file is located at '/var/tmp/portage/net-libs/webkit-gtk-2.28.2/temp/environment'.
 * Working directory: '/var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkit-gtk-2.28.2_build'
 * S: '/var/tmp/portage/net-libs/webkit-gtk-2.28.2/work/webkitgtk-2.28.2'



The build log is quite large, about 870kB. Should I attach to this bug report?
Comment 1 Fabio Rossi 2020-05-25 21:38:30 UTC
Created attachment 641792 [details]
emerge-info.txt.gz
Comment 2 Fabio Rossi 2020-05-25 21:39:03 UTC
I think the problem is related to gcc-7 while building with gcc-8 works
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-05-25 22:01:26 UTC
(In reply to Fabio Rossi from comment #2)
> I think the problem is related to gcc-7 while building with gcc-8 works

Can you try without -ggdb, and with gcc 9? Please attach at least the top of, and then the last 250-400 lines of the build.log.
Comment 4 Fabio Rossi 2020-05-26 09:14:48 UTC
Created attachment 641912 [details]
build.log.gz

stripped build log with configure part and compile error
Comment 5 Fabio Rossi 2020-05-26 09:15:53 UTC
(In reply to Sam James (sec padawan) from comment #3)
> (In reply to Fabio Rossi from comment #2)
> > I think the problem is related to gcc-7 while building with gcc-8 works
> 
> Can you try without -ggdb, and with gcc 9? Please attach at least the top
> of, and then the last 250-400 lines of the build.log.

I have tried with gcc-7 removing -ggdb, same problem. If I compile with gcc-8 or gcc-9 it works, even with -ggdb.
Comment 6 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-05-26 09:30:39 UTC
(In reply to Fabio Rossi from comment #5)
> (In reply to Sam James (sec padawan) from comment #3)
> > (In reply to Fabio Rossi from comment #2)
> > > I think the problem is related to gcc-7 while building with gcc-8 works
> > 
> > Can you try without -ggdb, and with gcc 9? Please attach at least the top
> > of, and then the last 250-400 lines of the build.log.
> 
> I have tried with gcc-7 removing -ggdb, same problem. If I compile with
> gcc-8 or gcc-9 it works, even with -ggdb.

I don't think GCC 7 is supported anymore upstream, just GCC 8 / GCC 9 / GCC 10:

https://gcc.gnu.org/

So is there a reason you need GCC 7?
Comment 7 Fabio Rossi 2020-05-26 09:37:06 UTC
(In reply to Sam James (sec padawan) from comment #6)

> https://gcc.gnu.org/
> 
> So is there a reason you need GCC 7?

Because I have installed it on an old and slow computer and cannot rebuild everything for each release of gcc. Anyway gcc-7 is still available in portage so I expect to be usable, otherwise there should be a check in webkit-gtk ebuild informing the user of incompatible gcc versions
Comment 8 Mart Raudsepp gentoo-dev 2020-05-26 20:20:17 UTC
It would be good to know WHY it fails with gcc7. What feature it uses that it doesn't have, or if it's hitting some bug or what.
You already have newer gcc, just switch to it for webkit-gtk build then meanwhile. webkit-gtk doesn't expose any C++ API to consumers (besides 5 symbols that aren't public API), it'll work fine for consumers using older C++ ABI (though I'm not sure that changed significantly between gcc7 and 8 either).
Comment 9 Fabio Rossi 2020-06-01 09:42:00 UTC
I have also reported the bug upstream https://bugs.webkit.org/show_bug.cgi?id=212590