Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 914475 - dev-qt/qtwebengine-6.5.2-r1: Fails to build with debug symbols (relocation truncated to fit: R_X86_64_32 against `.debug_info')
Summary: dev-qt/qtwebengine-6.5.2-r1: Fails to build with debug symbols (relocation tr...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Qt Bug Alias
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-09-20 17:59 UTC by Andrei Slavoiu
Modified: 2023-09-22 20:18 UTC (History)
2 users (show)

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


Attachments
Full build log (build.log.xz,645.31 KB, application/x-xz)
2023-09-20 18:01 UTC, Andrei Slavoiu
Details
emerge --info '=dev-qt/qtwebengine-6.5.2-r1::gentoo' (emerge.info,8.23 KB, text/plain)
2023-09-20 18:03 UTC, Andrei Slavoiu
Details
Build log with -g instead of -ggdb3 (build.log.xz,639.89 KB, application/x-xz)
2023-09-22 12:39 UTC, Andrei Slavoiu
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andrei Slavoiu 2023-09-20 17:59:11 UTC
[126/190] : && /usr/lib/ccache/bin/x86_64-pc-linux-gnu-g++ -fPIC -march=native -ggdb3 -O2 -pipe -fdiagnostics-color  -Wl,-O1 -Wl,--as-needed -Wl,-z,now   -Wl,-Bsymbolic-functions -Wl,--no-undefined -Wl,--version-script,/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/api/WebEngineCore.version @/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/QtWebEngineCore_objects.rsp -Wl,--gc-sections -Wl,--enable-new-dtags -shared -Wl,-soname,libQt6WebEngineCore.so.6 -o lib64/libQt6WebEngineCore.so.6.5.2 src/core/api/CMakeFiles/WebEngineCore.dir/WebEngineCore_autogen/mocs_compilation.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qtwebenginecoreglobal.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginecertificateerror.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineclientcertificateselection.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineclientcertificatestore.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginecontextmenurequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginecookiestore.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginedownloadrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginefilesystemaccessrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginefindtextresult.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginefullscreenrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginehistory.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginehttprequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineloadinginfo.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginemessagepumpscheduler.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginenavigationrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginenewwindowrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginenotification.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginepage.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineprofile.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginequotarequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineregisterprotocolhandlerrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginescript.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginescriptcollection.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginesettings.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineurlrequestinfo.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineurlrequestjob.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineurlscheme.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineurlschemehandler.cpp.o  -Wl,-rpath,:::::::  -Wl,--start-group @/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/QtWebEngineCore_archives.rsp -Wl,--end-group  -Wl,--no-fatal-warnings @/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/QtWebEngineCore_lflags_filtered.rsp @/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/QtWebEngineCore_libs.rsp -Wl,--no-fatal-warnings  /usr/lib64/libxkbcommon.so  /usr/lib64/libQt6Quick.so.6.5.2  /usr/lib64/libQt6OpenGL.so.6.5.2  /usr/lib64/libQt6Gui.so.6.5.2  /usr/lib64/libGLX.so  /usr/lib64/libOpenGL.so  /usr/lib64/libQt6QmlModels.so.6.5.2  /usr/lib64/libQt6WebChannel.so.6.5.2  /usr/lib64/libQt6Qml.so.6.5.2  /usr/lib64/libQt6Network.so.6.5.2  /usr/lib64/libQt6Core.so.6.5.2 && :
FAILED: lib64/libQt6WebEngineCore.so.6.5.2 
: && /usr/lib/ccache/bin/x86_64-pc-linux-gnu-g++ -fPIC -march=native -ggdb3 -O2 -pipe -fdiagnostics-color  -Wl,-O1 -Wl,--as-needed -Wl,-z,now   -Wl,-Bsymbolic-functions -Wl,--no-undefined -Wl,--version-script,/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/api/WebEngineCore.version @/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/QtWebEngineCore_objects.rsp -Wl,--gc-sections -Wl,--enable-new-dtags -shared -Wl,-soname,libQt6WebEngineCore.so.6 -o lib64/libQt6WebEngineCore.so.6.5.2 src/core/api/CMakeFiles/WebEngineCore.dir/WebEngineCore_autogen/mocs_compilation.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qtwebenginecoreglobal.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginecertificateerror.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineclientcertificateselection.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineclientcertificatestore.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginecontextmenurequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginecookiestore.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginedownloadrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginefilesystemaccessrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginefindtextresult.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginefullscreenrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginehistory.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginehttprequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineloadinginfo.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginemessagepumpscheduler.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginenavigationrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginenewwindowrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginenotification.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginepage.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineprofile.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginequotarequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineregisterprotocolhandlerrequest.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginescript.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginescriptcollection.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebenginesettings.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineurlrequestinfo.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineurlrequestjob.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineurlscheme.cpp.o src/core/api/CMakeFiles/WebEngineCore.dir/qwebengineurlschemehandler.cpp.o  -Wl,-rpath,:::::::  -Wl,--start-group @/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/QtWebEngineCore_archives.rsp -Wl,--end-group  -Wl,--no-fatal-warnings @/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/QtWebEngineCore_lflags_filtered.rsp @/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/QtWebEngineCore_libs.rsp -Wl,--no-fatal-warnings  /usr/lib64/libxkbcommon.so  /usr/lib64/libQt6Quick.so.6.5.2  /usr/lib64/libQt6OpenGL.so.6.5.2  /usr/lib64/libQt6Gui.so.6.5.2  /usr/lib64/libGLX.so  /usr/lib64/libOpenGL.so  /usr/lib64/libQt6QmlModels.so.6.5.2  /usr/lib64/libQt6WebChannel.so.6.5.2  /usr/lib64/libQt6Qml.so.6.5.2  /usr/lib64/libQt6Network.so.6.5.2  /usr/lib64/libQt6Core.so.6.5.2 && :
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0x587): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0x598): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0x63c): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0x64d): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0xbda): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0xc0b): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0xc16): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0xd43): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0xde6): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0xdfa): relocation truncated to fit: R_X86_64_32 against `.debug_info'
/var/tmp/portage/dev-qt/qtwebengine-6.5.2-r1/work/qtwebengine-everywhere-src-6.5.2_build/src/core/RelWithDebInfo/x86_64/obj/third_party/blink/renderer/modules/encoding/encoding/encoding_jumbo_1.o:(.debug_loclists+0xe1f): additional relocation overflows omitted from the output
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
 * ERROR: dev-qt/qtwebengine-6.5.2-r1::gentoo failed (compile phase):

Reproducible: Always
Comment 1 Andrei Slavoiu 2023-09-20 18:01:59 UTC
Created attachment 871013 [details]
Full build log
Comment 2 Andrei Slavoiu 2023-09-20 18:03:11 UTC
Created attachment 871014 [details]
emerge --info '=dev-qt/qtwebengine-6.5.2-r1::gentoo'
Comment 3 Ionen Wolkens gentoo-dev 2023-09-20 18:05:31 UTC
I never had issues building it with -g, but -ggdb3 may be excessive.
Comment 4 Ionen Wolkens gentoo-dev 2023-09-20 18:10:06 UTC
Also:
 * Used CFLAGS/CXXFLAGS seem to enable debug info (-g or -ggdb),
 * which is non-trivial with qtwebengine. May experience extended
 * compilation times and increased disk/memory usage. If run into
 * issues, please disable before reporting a bug.

Guess could extend the warning, but the last bit still applies.
Comment 5 Larry the Git Cow gentoo-dev 2023-09-20 18:27:20 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2500fef79aee6e4a51d275f2cf0cc7e8fccc2043

commit 2500fef79aee6e4a51d275f2cf0cc7e8fccc2043
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2023-09-20 18:19:50 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2023-09-20 18:26:19 +0000

    dev-qt/qtwebengine: extend -g warning and increase visibility
    
    If this comes up more often an issue, may opt to transform -g*
    (other than -g0) for -g without USE=custom-cflags. Albeit do
    not overly want to give surprises, nor assume when something
    is going to work or not given the toolchain and other options.
    
    Note that this does not affect <qtwebengine-6.5.2-r1 nor
    qtwebengine:5 because they simply do not respect *FLAGS.
    
    Bug: https://bugs.gentoo.org/914475
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 dev-qt/qtwebengine/qtwebengine-6.5.2-r1.ebuild | 12 ++++++++----
 dev-qt/qtwebengine/qtwebengine-6.5.9999.ebuild | 12 ++++++++----
 dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild | 12 ++++++++----
 dev-qt/qtwebengine/qtwebengine-6.9999.ebuild   | 12 ++++++++----
 4 files changed, 32 insertions(+), 16 deletions(-)
Comment 6 Ionen Wolkens gentoo-dev 2023-09-20 18:34:23 UTC
Loosely marking cantfix (loosely given could still force strip or replace -g* rather than leave it up to users).

If you try and still have issues with -g rather than -ggdb3 I'd guess there's something else going on though.
Comment 7 Larry the Git Cow gentoo-dev 2023-09-22 04:46:33 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=97a0c80e59f2a6770d73518d44d0a481e845e822

commit 97a0c80e59f2a6770d73518d44d0a481e845e822
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2023-09-22 04:13:06 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2023-09-22 04:44:36 +0000

    dev-qt/qtwebengine: replace -g3+ for -g unless custom-cflags (qt6)
    
    On second thought let's do this, but keep a warning that mentions
    USE=custom-cflags given users may not be used to -g* getting
    replaced and then lacking the symbols they were expecting.
    
    Not going to keep disk space / memory usage updated for -g as
    estimates would likely be all over the place and consider that
    the warning is sufficient there.
    
    Not using a full replace-flags '-g*' -g to allow e.g. a package.env
    that adds -g0/-g1 at the end to still work while disregaring the
    warning without implementing extra logic.
    
    Note that have not retried -g to be sure it is fine, albeit pretty
    sure it was fine last time tried. Worst case could replace by -g1,
    or drop flags-respecting-patches and request debugging symbols to
    gn instead (selectively forces -g1 even if asked for more).
    
    Closes: https://bugs.gentoo.org/914475
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 dev-qt/qtwebengine/qtwebengine-6.5.2-r1.ebuild | 10 ++++++++--
 dev-qt/qtwebengine/qtwebengine-6.5.9999.ebuild | 10 ++++++++--
 dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild | 10 ++++++++--
 dev-qt/qtwebengine/qtwebengine-6.9999.ebuild   | 10 ++++++++--
 4 files changed, 32 insertions(+), 8 deletions(-)
Comment 8 Andrei Slavoiu 2023-09-22 12:39:12 UTC
Created attachment 871102 [details]
Build log with -g instead of -ggdb3

But it's not caused by -ggdb3, I was able to reproduce it with plain -g, see attached log.
Comment 9 Ionen Wolkens gentoo-dev 2023-09-22 12:57:07 UTC
Odd, guess I'll give it another try with -g -- changed things around since back when I tried it so may have overlooked something.

fwiw www-client/chromium filters it out entirely by default, albeit would rather not block it entirely
Comment 10 Andrei Slavoiu 2023-09-22 13:33:15 UTC
Since it's a linking problem, I also tried without my custom LDFLAGS (-Wl,-z,now), still same error.
Comment 11 Ionen Wolkens gentoo-dev 2023-09-22 20:06:03 UTC
Tried two builds -- one with -g and one with -g1.

And you're right, does fail for me as well with -g (think last time I tried this it wasn't really respecting flags yet and build system was forcing -g1).

Not to mention the single ld process (bfd) was using ~13GB ram (not that ran out, but still high). I assume this may work better with lld, and/or maybe(?) -gz helps (debug compression, not something I experimented with).

-g1 on the other hand seems mostly harmless (beside adding ~3GB to the build dir) and is still useful for not not entirely useless backtraces, so it may be a better replacement than -g to "fix" this bug.

Users wanting something better than -g1 may have to experiment.
Comment 12 Larry the Git Cow gentoo-dev 2023-09-22 20:18:38 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1937629476214f1492dca620d5290c34a0c0b118

commit 1937629476214f1492dca620d5290c34a0c0b118
Author:     Ionen Wolkens <ionen@gentoo.org>
AuthorDate: 2023-09-22 20:12:42 +0000
Commit:     Ionen Wolkens <ionen@gentoo.org>
CommitDate: 2023-09-22 20:17:37 +0000

    dev-qt/qtwebengine: use -g1 rather than -g (qt6)
    
    Turns out -g is still too much, or at least with gcc+bfd.
    
    Closes: https://bugs.gentoo.org/914475
    Signed-off-by: Ionen Wolkens <ionen@gentoo.org>

 dev-qt/qtwebengine/qtwebengine-6.5.2-r1.ebuild | 9 ++++-----
 dev-qt/qtwebengine/qtwebengine-6.5.9999.ebuild | 9 ++++-----
 dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild | 9 ++++-----
 dev-qt/qtwebengine/qtwebengine-6.9999.ebuild   | 9 ++++-----
 4 files changed, 16 insertions(+), 20 deletions(-)