Fwd: cross compile OpenJDK-9+158 minimal variant failed when link libjvm.so
David Holmes
david.holmes at oracle.com
Tue Feb 28 09:27:11 UTC 2017
On 28/02/2017 7:19 PM, Erik Joelsson wrote:
> Hello,
>
> I doubt anyone has built a minimal arm jvm with only open code recently.
> To me this looks like an error in the Hotspot source code and not really
> a build issue as such.
I'm trying to track it down, but yes this may well be the first time
this has been attempted since the 32-bit ARM port was opened up.
David
> /Erik
>
>
> On 2017-02-28 09:51, Zhu Yong wrote:
>> Dear All,
>>
>> I am testing cross compile OpenJDK-9+158 for our embedded system using
>> buildroot, I can build server and client variants successfully, but the
>> output compact1 profile file size is too big, then I tried to build
>> minimal
>> variant, failed when linking libjvm.so.
>>
>> I checked build/linux-arm-normal-minimal-release/hotspot/variant-minimal/
>> libjvm/objs/_BUILD_LIBJVM_objectfilenames.txt, jvmtiEnvBase.o
>> and jvmtiEnvThreadState.o are not listed in the file (which is required
>> from the error message below).
>>
>>
>> === Output from failing command(s) repeated here ===
>> * For target hotspot_variant-minimal_libjvm_objs_BUILD_LIBJVM_link:
>> /tmp/cc27HS5M.ltrans0.ltrans.o: In function `VM_GetStackTrace::doit()
>> [clone .local.640]':
>> cc27HS5M.ltrans0.o:(.text+0xce5e): undefined reference to
>> `JvmtiEnvBase::get_stack_trace(JavaThread*, int, int, _jvmtiFrameInfo*,
>> int*)'
>> /tmp/cc27HS5M.ltrans0.ltrans.o: In function
>> `VM_GetCurrentContendedMonitor::doit()
>> [clone .local.639]':
>> cc27HS5M.ltrans0.o:(.text+0xcec2): undefined reference to
>> `JvmtiEnvBase::get_current_contended_monitor(JavaThread*, JavaThread*,
>> _jobject**)'
>> /tmp/cc27HS5M.ltrans0.ltrans.o: In function
>> `VM_GetOwnedMonitorInfo::doit()
>> [clone .local.638]':
>> cc27HS5M.ltrans0.o:(.text+0xcf26): undefined reference to
>> `JvmtiEnvBase::get_owned_monitors(JavaThread*, JavaThread*,
>> GrowableArray<_
>> jvmtiMonitorStackDepthInfo*>*)'
>> /tmp/cc27HS5M.ltrans0.ltrans.o: In function `VM_GetFrameCount::doit()
>> [clone .local.637]':
>> cc27HS5M.ltrans0.o:(.text+0xcf8a): undefined reference to
>> `JvmtiEnvBase::get_frame_count(JvmtiThreadState*, int*)'
>> /tmp/cc27HS5M.ltrans0.ltrans.o: In function `VM_SetFramePop::doit()
>> [clone
>> .local.636]':
>> cc27HS5M.ltrans0.o:(.text+0xcfea): undefined reference to
>> `JvmtiThreadState::count_frames()'
>> cc27HS5M.ltrans0.o:(.text+0xd030): undefined reference to
>> `JvmtiEnvThreadState::set_frame_pop(int)'
>> /tmp/cc27HS5M.ltrans0.ltrans.o: In function `VM_GetFrameLocation::doit()
>> [clone .local.641]':
>> ... (rest of output omitted)
>>
>>
>> My configuration:
>>
>> --with-jdk-variant=normal \
>> --with-jvm-variants=minimal \
>> --with-debug-level=release \
>> --disable-warnings-as-errors \
>> --disable-hotspot-gtest \
>> --with-abi-profile=arm-vfp-sflt \
>> --openjdk-target=$(GNU_TARGET_NAME) \
>> --with-sys-root=$(STAGING_DIR) \
>> --with-tools-dir=$(HOST_DIR) \
>> --with-freetype-include=$(STAGING_DIR)/usr/include \
>> --with-freetype-lib=$(STAGING_DIR)/usr/lib \
>> --with-freetype=$(STAGING_DIR)/usr/ \
>> --with-alsa-include=$(STAGING_DIR)/usr/include \
>> --with-alsa-lib=$(STAGING_DIR)/usr/lib \
>> --with-alsa=$(STAGING_DIR)/usr/ \
>> --with-cups=$(STAGING_DIR)/usr/ \
>> --with-x=$(STAGING_DIR)/usr/include \
>> --with-extra-ldflags=--sysroot=$(STAGING_DIR) \
>> --enable-headless-only \
>> --disable-freetype-bundling \
>> --enable-unlimited-crypto \
>> --with-boot-jdk=/opt/java/jdk1.8.0_102
>
More information about the build-dev
mailing list