1 |
On Mon, Jan 30, 2023 at 08:43:55AM +0100, Hoël Bézier wrote: |
2 |
> Hi, |
3 |
> |
4 |
> Recently I’ve run into an issue with a proprietary java game called The Count |
5 |
> Lucanor. It is distributed on GOG.com with a bundled Java 8 binary. Since |
6 |
> bundled libraries are evil™, I’ve tried getting rid of it in favor of my system |
7 |
> java binary. |
8 |
> |
9 |
> If the latter is Java 8, everything works as expected. However, using Java 17 |
10 |
> the game crashes on start with the following error: |
11 |
> |
12 |
> Inconsistency detected by ld.so: dl-lookup.c: 111: check_match: Assertion `version->filename == NULL || ! _dl_name_match_p (version->filename, map)' failed! |
13 |
> |
14 |
> This happened with dev-java/openjdk:17 but to my surprise didn’t with |
15 |
> dev-java/openjdk-bin:17. I figured Eclipse Temurin had to build OpenJDK with |
16 |
> different flags than I did, which fixed the issue. |
17 |
> |
18 |
> After running a bunch of tests, I managed to build a working java binary by |
19 |
> removing -Wl,--as-needed from my LDFLAGS (or adding -Wl,--no-as-needed). This |
20 |
> flag is set by my profile — default/linux/amd64/17.1 — so I expect mostly |
21 |
> everyone to have it. |
22 |
> |
23 |
> Should I propose a patch to dev-java/openjdk:17 in order to filter out |
24 |
> -Wl,--as-needed? I have no idea what this flag is for nor if removing it might |
25 |
> result in other issues, which is why I’m asking on this mailing-list before |
26 |
> doing so. Moreover, that would be in order to fix an issue with a proprietary |
27 |
> game, and I don’t know what is Gentoo policy regarding that kind of bug. |
28 |
> |
29 |
> If I am to propose a patch, should I do so using filter-flag from |
30 |
> flag-o-matic.eclass, or no-as-needed which is provided by the same eclass and |
31 |
> is a no-op on clang? (My C compiler is gcc and I haven’t tested building |
32 |
> OpenJDK17 with clang.) |
33 |
> |
34 |
> If I should propose a patch, should I first open a bug in gentoo bugtracker so |
35 |
> that it may be referenced in the ebuild? |
36 |
> |
37 |
> Thanks |
38 |
> Hoël |
39 |
> |
40 |
> PS: Using dev-java/openjdk:11 to run the game also fails, but with a different |
41 |
> error which I did not try to fix. So this discussion is only about |
42 |
> dev-java/openjdk:17. |
43 |
|
44 |
Seems reasonable to open a bug, at least for posterity. |