Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 913923 - dev-qt/qtwebengine:5 fails to compile with >=dev-libs/re2-2023 (error: ... has no member named ‘as_string’)
Summary: dev-qt/qtwebengine:5 fails to compile with >=dev-libs/re2-2023 (error: ... ha...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal
Assignee: Qt Bug Alias
URL:
Whiteboard:
Keywords: PullRequest
: 936884 936893 936907 (view as bug list)
Depends on:
Blocks: 912819
  Show dependency tree
 
Reported: 2023-09-10 08:53 UTC by Petr Šourek
Modified: 2024-11-21 15:58 UTC (History)
13 users (show)

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


Attachments
build.log (build.log.bz2,278.60 KB, application/x-bzip)
2023-09-10 08:53 UTC, Petr Šourek
Details
emerge --info '=dev-qt/qtwebengine-5.15.10_p20230815::gentoo' (emerge.info.log,12.12 KB, text/x-log)
2023-09-10 08:53 UTC, Petr Šourek
Details
environment (environment.log,142.66 KB, text/x-log)
2023-09-10 08:54 UTC, Petr Šourek
Details
qtwebengine-5.15.10_p20230815-bundled-re2.patch (qtwebengine-5.15.10_p20230815-bundled-re2.patch,694 bytes, patch)
2023-10-02 06:31 UTC, pva
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Petr Šourek 2023-09-10 08:53:16 UTC
Created attachment 870204 [details]
build.log

Hello,

it is few weeks that I am trying to update qtwebengine, but it always fails to compile. I know, that I should have added it earlier, but was testing stable (5.15.10_p20230623), was changing use flags, changed makeopts from -j4 to -j1, disabling ccache for this package, etc., nothing helped. I always see this error message in the log, nothing more nothing less. Even tried to search what is gles, but no luck so far.

FAILED: obj/gpu/command_buffer/service/gles2_sources/program_manager.o

I am attaching all the necessary information, I hope. If anything else is needed, please don't hesitate to contact me.

Thanks,
Regards,
Petr Sourek
Comment 1 Petr Šourek 2023-09-10 08:53:44 UTC
Created attachment 870205 [details]
emerge --info '=dev-qt/qtwebengine-5.15.10_p20230815::gentoo'
Comment 2 Petr Šourek 2023-09-10 08:54:45 UTC
Created attachment 870206 [details]
environment
Comment 3 Ionen Wolkens gentoo-dev 2023-09-10 20:07:28 UTC
program_manager.cc:623:25: error: ‘using StringPiece = class absl::string_view’ {aka ‘class absl::string_view’} has no member named ‘as_string’
  623 |   return output + input.as_string();

Haven't tried, but this is likely related to either abseil-cpp being installed (unsure if we already have a bug for this), or perhaps(?) if you have a newer dev-libs/re2 than what's in the tree (qtwebengine should probably use the bundled copy for re2).

Newer chromium (than qt5's) removed the as_string already 2 years ago in
https://github.com/chromium/chromium/commit/8d7cdb7b
-  return output + input.as_string();
+  return output + std::string(input);

(ftr I don't really intend to work on qt5, just commenting for hints)
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-09-10 21:34:35 UTC
(In reply to Ionen Wolkens from comment #3)
> Haven't tried, but this is likely related to either abseil-cpp being
> installed (unsure if we already have a bug for this), or perhaps(?) if you
> have a newer dev-libs/re2 than what's in the tree (qtwebengine should
> probably use the bundled copy for re2).
> 

Yeah, plan is to do this, just wasn't in a rush because we hadn't bumped re2 yet (wanted to handle one set of chaos first).

But yeah, feel like there must be a newer copy of re2 installed than we have. Please share: emerge -pvO dev-libs/re2.
Comment 5 Petr Šourek 2023-09-10 22:15:50 UTC
> But yeah, feel like there must be a newer copy of re2 installed than we
> have. Please share: emerge -pvO dev-libs/re2.

These are the packages that would be merged, in order:

[ebuild   R    ] dev-libs/re2-0.2023.08.01:0/11::pg_overlay  USE="icu" ABI_X86="32 (64) (-x32)" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB

So I should downgrade re2?
Comment 6 Ionen Wolkens gentoo-dev 2023-09-10 22:26:44 UTC
(In reply to Petr Šourek from comment #5)
> > But yeah, feel like there must be a newer copy of re2 installed than we
> > have. Please share: emerge -pvO dev-libs/re2.
> 
> These are the packages that would be merged, in order:
> 
> [ebuild   R    ] dev-libs/re2-0.2023.08.01:0/11::pg_overlay  USE="icu"
> ABI_X86="32 (64) (-x32)" 0 KiB
That's probably it then, wasn't sure what kind of errors you get but code made it sound related.

> So I should downgrade re2?
For now at least, like sam said it's still an issue that needs to be fixed so we can upgrade re2 in the main tree eventually.
Comment 7 Petr Šourek 2023-09-11 20:26:28 UTC
> For now at least, like sam said it's still an issue that needs to be fixed
> so we can upgrade re2 in the main tree eventually.

Great, thanks.

used:
sudo echo '>dev-libs/re2-0.2022.12.01' >> /etc/portage/package.mask/dev-libs
sudo emerge -av dev-libs/re2
sudo emerge -av qtwebengine

And it compiled now. I am running pending updates.

Thanks
Comment 8 Ionen Wolkens gentoo-dev 2023-09-12 11:58:35 UTC
(In reply to Ionen Wolkens from comment #6)
> For now at least, like sam said it's still an issue that needs to be fixed
> so we can upgrade re2 in the main tree eventually.
Forgot to mention, but ftr this already been done some time ago in qtwebengine:6. It may be more usable in 6 but preferred to avoid it for now (not to mention that re2:= revdep rebuild on qtwebengine feels kind of wasteful), could revisit when it settles down though.
Comment 9 Ionen Wolkens gentoo-dev 2023-09-12 12:18:43 UTC
I think(?) -no-webengine-system-re2 should work for :5 (or is the -webengine bit not needed given the other -system options?), but I have not tried.
Comment 10 pva 2023-10-02 06:31:51 UTC
Created attachment 871998 [details, diff]
qtwebengine-5.15.10_p20230815-bundled-re2.patch

qmake options didn't work for me (no such option error), but the attached patch did the job: I've managed to build qtwebengine with re2 library bundled.
Comment 11 Petr Šourek 2023-10-03 13:32:03 UTC
(In reply to pva from comment #10)
> Created attachment 871998 [details, diff] [details, diff]
> qtwebengine-5.15.10_p20230815-bundled-re2.patch
> 
> qmake options didn't work for me (no such option error), but the attached
> patch did the job: I've managed to build qtwebengine with re2 library
> bundled.

Added this patch to /etc/portage/patches... and unmasked RE2 by removing record from /etc/portage/package.mask/dev-libs.

emerge -avuDN @world

Have compiled:
re2 version 0.2023.09.01
and
qtwebengine version 5.15.10_p20230815

Successfuly.

Thanks,
Regards,
Petr Sourek
Comment 12 Ionen Wolkens gentoo-dev 2024-07-29 11:59:25 UTC
*** Bug 936884 has been marked as a duplicate of this bug. ***
Comment 13 Ionen Wolkens gentoo-dev 2024-07-29 17:22:31 UTC
*** Bug 936893 has been marked as a duplicate of this bug. ***
Comment 14 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-07-29 18:37:26 UTC
*** Bug 936907 has been marked as a duplicate of this bug. ***
Comment 15 Larry the Git Cow gentoo-dev 2024-07-29 20:20:02 UTC
The bug has been closed via the following commit(s):

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

commit b318bfa471b373999512d794f50bd5349fa6a6d5
Author:     Aliaksei Urbanski <aliaksei.urbanski@gmail.com>
AuthorDate: 2024-07-29 18:53:28 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-07-29 20:19:32 +0000

    dev-qt/qtwebengine: fix re2 compatibility
    
    Use bundled re2 to avoid the compatibility
    issue for qtwebengine-5.15.14_p20240510.
    
    Closes: https://bugs.gentoo.org/913923
    Bug: https://bugs.gentoo.org/936884
    Signed-off-by: Aliaksei Urbanski <aliaksei.urbanski@gmail.com>
    Closes: https://github.com/gentoo/gentoo/pull/37785
    Signed-off-by: Sam James <sam@gentoo.org>

 .../files/qtwebengine-5.15.14_p20240510-re2.patch          | 14 ++++++++++++++
 dev-qt/qtwebengine/qtwebengine-5.15.14_p20240510.ebuild    |  3 ++-
 2 files changed, 16 insertions(+), 1 deletion(-)
Comment 16 Julien Delquié 2024-07-29 20:58:29 UTC
Same issue appears with version 6.7.2.
Do I create a separate bug?
Comment 17 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-07-29 20:58:57 UTC
(In reply to Julien Delquié from comment #16)
> Same issue appears with version 6.7.2.
> Do I create a separate bug?

Yes please.
Comment 18 Ionen Wolkens gentoo-dev 2024-07-29 21:02:12 UTC
(In reply to Julien Delquié from comment #16)
> Same issue appears with version 6.7.2.
> Do I create a separate bug?
That sounds surprising, it's 6.7.2 is not using system re2 already, not to say it may not be picking something up even though it's not meant to use it (haven't tried).

But yes, separate bug please.
Comment 19 Julien Delquié 2024-07-29 21:05:09 UTC
(In reply to Ionen Wolkens from comment #18)
> (In reply to Julien Delquié from comment #16)
> > Same issue appears with version 6.7.2.
> > Do I create a separate bug?
> That sounds surprising, it's 6.7.2 is not using system re2 already, not to
> say it may not be picking something up even though it's not meant to use it
> (haven't tried).
> 
> But yes, separate bug please.

I think I am wrong, I am currently checking my emerge history, and rebuilding again qtwebengine 6.7.2 without the patch in /etc/portage/patches.

I will tell you the result, but I definitively think I am wrong… sorry for the inconvenience. :s
Comment 20 Ionen Wolkens gentoo-dev 2024-07-29 21:15:40 UTC
(In reply to Julien Delquié from comment #19)
> (In reply to Ionen Wolkens from comment #18)
> > (In reply to Julien Delquié from comment #16)
> > > Same issue appears with version 6.7.2.
> > > Do I create a separate bug?
> > That sounds surprising, it's 6.7.2 is not using system re2 already, not to
> > say it may not be picking something up even though it's not meant to use it
> > (haven't tried).
> > 
> > But yes, separate bug please.
> 
> I think I am wrong, I am currently checking my emerge history, and
> rebuilding again qtwebengine 6.7.2 without the patch in /etc/portage/patches.
np, as a side-tidbit, if you had a patch meant only for one qtwebengine, you can add the slot or even version in there, e.g. /etc/portage/patches/dev-qt/qtwebengine:5/my.patch -- pretty rare a patch will make sense for both or apply cleanly
Comment 21 Julien Delquié 2024-07-30 04:11:08 UTC
OK, so it finally build fine in version 6.7.2 (obviously without patch). No bug report needed.
And thanks for the side-tidbit, I will use this next time I use patches. :)
Comment 22 Larry the Git Cow gentoo-dev 2024-11-21 15:58:14 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/proj/qt.git/commit/?id=06b4e59da0ce482393a8bf014324e47a8bbcb33f

commit 06b4e59da0ce482393a8bf014324e47a8bbcb33f
Author:     Aliaksei Urbanski <aliaksei.urbanski@gmail.com>
AuthorDate: 2024-07-29 18:53:28 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2024-11-21 15:57:40 +0000

    dev-qt/qtwebengine: fix re2 compatibility
    
    Use bundled re2 to avoid the compatibility
    issue for qtwebengine-5.15.14_p20240510.
    
    Bug: https://bugs.gentoo.org/913923
    Bug: https://bugs.gentoo.org/936884
    Signed-off-by: Aliaksei Urbanski <aliaksei.urbanski@gmail.com>
    Closes: https://github.com/gentoo/gentoo/pull/37785
    Signed-off-by: Sam James <sam@gentoo.org>
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 .../files/qtwebengine-5.15.14_p20240510-re2.patch          | 14 ++++++++++++++
 dev-qt/qtwebengine/qtwebengine-5.15.14.9999.ebuild         |  3 ++-
 2 files changed, 16 insertions(+), 1 deletion(-)