-
Enhancement
-
Resolution: Unresolved
-
P4
-
None
In one specific scenario [1], the JDK/hotspot static libraries provided by a JDK binary can be used to create a fully statically linked binary image as a post process when building Java applications.
As part of the work, it's useful to be able to demonstrate and test the JDK static build support with a fully statically linked launcher executable (such as bin/javastatic), which is statically linked with the libjvm static library and a desired set of JDK static libraries. To achieve such a goal, some JDK/VM work would be involved in addition to the build changes, e.g.:
- Resolve symbol issues with a fully statically linked build
- Change assumptions with `dlopen` for libjvm
It's also beneficial to be able to build both .so and .a from the same set of .o files. That would involve some changes to handle the dynamic JDK and static JDK difference at runtime, instead of relying on the STATIC_BUILD macro.
Will create separate bugs/enhancements for the non-build changes.
[1] - https://mail.openjdk.org/pipermail/leyden-dev/2023-February/000107.html
- relates to
-
JDK-8350450 Compile object files once for both static and dynamic builds
-
- Open
-
-
JDK-8350524 Some hotspot/jtreg/serviceability/dcmd/vm tier1 tests fail on static JDK
-
- Open
-
-
JDK-8308110 Resolve multiple definition of 'JNI_OnLoad_jsound' linking error
-
- Resolved
-
-
JDK-8308458 Windows build failure with disassembler.cpp(792): warning C4267: '=': conversion from 'size_t' to 'int'
-
- Resolved
-
-
JDK-8311606 Change read_icc_profile() to static function in java.desktop/share/native/libjavajpeg/imageioJPEG.c
-
- Resolved
-
-
JDK-8312626 Resolve multiple definition of 'start_timer' when statically linking JDK native libraries with user code
-
- Resolved
-
-
JDK-8313277 Resolve multiple definition of 'normalize' when statically linking JDK native libraries with user code
-
- Resolved
-
-
JDK-8316923 Add DEF_STATIC_JNI_OnLoad for librmi
-
- Resolved
-
-
JDK-8326433 Make file-local functions static in src/jdk.jdwp.agent/unix/native/libjdwp/exec_md.c
-
- Resolved
-
-
JDK-8326714 Make file-local functions static in src/java.base/unix/native/libjava/childproc.c
-
- Resolved
-
-
JDK-8345744 Use C++ LINK_TYPE with SetupBuildLauncher in StaticLibs.gmk
-
- Resolved
-
-
JDK-8349868 Remove unneeded libjava shared library dependency from jtreg test libNewDirectByteBuffer, libDirectIO and libInheritedChannel
-
- Resolved
-
-
JDK-8350041 Skip test/jdk/java/lang/String/nativeEncoding/StringPlatformChars.java on static JDK
-
- Resolved
-
-
JDK-8350903 Remove explicit libjvm.so dependency for libVThreadEventTest
-
- Resolved
-
-
JDK-8350982 -server|-client causes fatal exception on static JDK
-
- Resolved
-
-
JDK-8351309 test/hotspot/jtreg/runtime/posixSig/TestPosixSig.java fails on static-jdk
-
- Resolved
-
-
JDK-8310491 Resolve some startup failures with JDK static build support
-
- Closed
-
-
JDK-8349859 Support static JDK in libfontmanager/freetypeScaler.c
-
- Closed
-
-
JDK-8351367 Decide libjsig support on static JDK
-
- New
-
-
JDK-8351689 -Xshare:dump with default classlist fails on static JDK
-
- New
-
-
JDK-8311661 Resolve duplicate symbol of StringTable::StringTable with JDK static linking
-
- Open
-
-
JDK-8311846 Resolve duplicate 'Thread' related symbols with JDK static linking
-
- Open
-
-
JDK-8339480 Build static-jdk image with a statically linked launcher
-
- Resolved
-
-
JDK-8338768 Introduce runtime lookup to check for static builds
-
- Resolved
-
-
JDK-8307194 Add make target for optionally building a complete set of all JDK and hotspot libjvm static libraries
-
- Resolved
-
-
JDK-8307858 [REDO] JDK-8307194 Add make target for optionally building a complete set of all JDK and hotspot libjvm static libraries
-
- Resolved
-
-
JDK-8348905 Add support to specify the JDK for compiling Jtreg tests
-
- Resolved
-
-
JDK-8349620 Add VMProps for static JDK
-
- Resolved
-
-
JDK-8305761 Resolve multiple definition of 'jvm' when statically linking with JDK native libraries
-
- Resolved
-
-
JDK-8305935 Resolve multiple definition of 'jmm_<interface|version>' when statically linking with JDK native libraries
-
- Resolved
-
-
JDK-8306033 Resolve multiple definition of 'throwIOException' and friends when statically linking with JDK native libraries
-
- Resolved
-
-
JDK-8306949 Resolve miscellaneous multiple symbol definition issues when statically linking JDK/VM natives with standard launcher
-
- Resolved
-
-
JDK-8343497 Missing DEF_STATIC_JNI_OnLoad in libjimage and libsaproc native libraries
-
- Resolved
-
-
JDK-8305858 Resolve multiple definition of 'handleSocketError' when statically linking with JDK native libraries
-
- Closed
-
- links to
-
Review openjdk/jdk/13709