Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Sep 2023 15:30:17 +0000
From:      bugzilla-noreply@freebsd.org
To:        java@FreeBSD.org
Subject:   maintainer-feedback requested: [Bug 274109] java/openjdk17: fix build with lld 17
Message-ID:  <bug-274109-8522-i881UQ9ncF@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-274109-8522@https.bugs.freebsd.org/bugzilla/>
References:  <bug-274109-8522@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
Bugzilla Automation <bugzilla@FreeBSD.org> has asked freebsd-java (Nobody)
<java@FreeBSD.org> for maintainer-feedback:
Bug 274109: java/openjdk17: fix build with lld 17
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D274109



--- Description ---
Building java/openjdk8 with lld 17 results in the following link error:

ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZ21WB_HandshakeWalkStackE16TraceSelfClosure' failed: symbol not defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZ26WB_AsyncHandshakeWalkStackE16TraceSelfClosure' failed: symbol not
defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZN12JvmtiEnvBase27check_for_periodic_clean_upEvE28ThreadInsideIteratio=
nClo
sure'
failed: symbol not defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZN15G1RemSetSummary6updateEvE11CollectData' failed: symbol not defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZN16SATBMarkQueueSet22set_active_all_threadsEbbE22SetThreadActiveClosu=
re'
failed: symbol not defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZN16SATBMarkQueueSet23abandon_partial_markingEvE25AbandonThreadQueueCl=
osur
e'
failed: symbol not defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZN18G1ConcurrentRefine30get_and_reset_refinement_statsEvE12CollectStat=
s'
failed: symbol not defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZN19G1DirtyCardQueueSet12abandon_logsEvE23AbandonThreadLogClosure' fai=
led:
symbol not defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZN19G1DirtyCardQueueSet16concatenate_logsEvE27ConcatenateThreadLogClos=
ure'
failed: symbol not defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZN19G1DirtyCardQueueSet30get_and_reset_refinement_statsEvE12CollectSta=
ts'
failed: symbol not defined
ld: error: version script assignment of 'SUNWprivate_1.1' to symbol
'_ZTVZN7Threads25change_thread_claim_tokenEvE11ResetClaims' failed: symbol =
not
defined
c++: error: linker command failed with exit code 1 (use -v to see invocatio=
n)

This is because lld 17 defaults to errors when undefined symbols are refere=
nced
in linker version scripts. The problem is due to the Makefile JvmMapfile.gm=
k,
which generates a linker version script. It uses "nm --defined-only" to dump
symbols in object files, but this also includes local (hidden) symbols. Add
"--extern-only" to make it only dump global symbols.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-274109-8522-i881UQ9ncF>