Hi,

It looks like  Adoptium is building with CentOS 6.10[1] which does not
append --as-needed linker flag by default. This results in the
.gnu_version section created and the bug worked around with Temurin
builds.
In Debian/Ubuntu the toolchain automatically uses -as-needed by
default so we've forced the --no-as-needed flag recently[2] to resolve
this issue[3].
I wonder if it is an acceptable solution to add '--no-as-needed' to
BASIC_LDFLAGS in make/autoconf/flags-ldflags.m4 to have consistent
linking?

Best Regards,
 Vladimir.

[1] 
https://ci.adoptium.net/job/build-scripts/job/jobs/job/jdk17u/job/jdk17u-linux-x64-temurin/lastBuild/consoleFull
[2] 
https://salsa.debian.org/openjdk-team/openjdk/-/commit/b9b80f7da869be0ee42fbb2dd18486b7b0a1826c
[3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1031521

On Thu, Jun 29, 2023 at 7:06 PM David Holmes <david.hol...@oracle.com> wrote:
>
> Hi Vladimir,
>
> This is not the first time this has come up:
>
> https://mail.openjdk.org/pipermail/build-dev/2020-February/026730.html
>
> but no real resolution.
>
> David
>
> On 27/06/2023 6:31 pm, Vladimir Petko wrote:
> > Dear Maintainers,
> >
> >   There is a bug[1] submitted in Debian that a number of games crash
> > with the assertion
> >
> > Inconsistency detected by ld.so: dl-lookup.c: 107: check_match:
> > Assertion `version->filename == NULL || ! _dl_name_match_p
> > (version->filename, map)' failed!
> >
> > The investigation points to JAWT_GetAWT function from libjawt.so.
> >
> > In Java 8 the build system supplied a mapfile which set the symbol
> > version for JAWT_GetAWT. It is no longer the case for Java 11+ due
> > to JDK-8200178.
> > If the native library was linked against Java 8 (e.g. lwjgl 2.x) then
> > it would be linking against the versioned symbol.
> > The assertion in the loader only fires when the version section
> > (.gnu.version) is absent, otherwise the loader provides the default
> > version of the function. This allows Temurin builds to work with those 
> > games.
> >
> > I wonder if some of the map files could be reverted for the
> > compatibility reasons with Java 8, or it is not a recommended
> > approach?
> >
> > [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1031521

Reply via email to