JDK-8205002 : Windows slowdebug without precompiled header fails to link jvm.dll
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 11
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2018-06-14
  • Updated: 2018-06-14
  • Resolved: 2018-06-14
Related Reports
Duplicate :  
Relates :  
Description
jib > javaClasses.obj : error LNK2019: unresolved external symbol "public: static class oopDesc * __cdecl StringTable::create_archived_string(class oopDesc *,class Thread *)" (?create_archived_string@StringTable@@SAPEAVoopDesc@@PEAV2@PEAVThread@@@Z) referenced in function "void __cdecl initialize_static_field(class fieldDescriptor *,class Handle,class Thread *)" (?initialize_static_field@@YAXPEAVfieldDescriptor@@VHandle@@PEAVThread@@@Z)
jib > t:/workspace/build/windows-x64-slowdebug/support/modules_libs/java.base/server/jvm.dll : fatal error LNK1120: 1 unresolved externals
jib > lib/CompileJvm.gmk:149: recipe for target '/cygdrive/t/workspace/build/windows-x64-slowdebug/support/modules_libs/java.base/server/jvm.dll' failed
jib > make[3]: *** [/cygdrive/t/workspace/build/windows-x64-slowdebug/support/modules_libs/java.base/server/jvm.dll] Error 1
jib > make[3]: *** Waiting for unfinished jobs....
jib > javaClasses.obj : error LNK2019: unresolved external symbol "public: static class oopDesc * __cdecl StringTable::create_archived_string(class oopDesc *,class Thread *)" (?create_archived_string@StringTable@@SAPEAVoopDesc@@PEAV2@PEAVThread@@@Z) referenced in function "void __cdecl initialize_static_field(class fieldDescriptor *,class Handle,class Thread *)" (?initialize_static_field@@YAXPEAVfieldDescriptor@@VHandle@@PEAVThread@@@Z)
jib > t:/workspace/build/windows-x64-slowdebug/hotspot/variant-server/libjvm/gtest/jvm.dll : fatal error LNK1120: 1 unresolved externals
jib > lib/CompileGtest.gmk:58: recipe for target '/cygdrive/t/workspace/build/windows-x64-slowdebug/hotspot/variant-server/libjvm/gtest/jvm.dll' failed
jib > make[3]: *** [/cygdrive/t/workspace/build/windows-x64-slowdebug/hotspot/variant-server/libjvm/gtest/jvm.dll] Error 1
Comments
A fix for this was already included in 8204613.
14-06-2018

Assigning to [~rehn]. Please advise if you can't do a quick fix.
14-06-2018

This code in the fix for JDK-8195097: // Sharing + private: + oop lookup_shared(jchar* name, int len, unsigned int hash) NOT_CDS_JAVA_HEAP_RETURN_(NULL); + static void copy_shared_string_table(CompactStringTableWriter* ch_table) NOT_CDS_JAVA_HEAP_RETURN; + public: + static oop create_archived_string(oop s, Thread* THREAD); should have used NOT_CDS_JAVA_HEAP_RETURN on create_archived_string.
14-06-2018

The method declaration in the header file is unconditional, but the definition is under: #if INCLUDE_CDS_JAVA_HEAP Can you tell if CDS is disabled for the failing build. I think this CDS-disabled issue has been reported on the mailing lists very recently.
14-06-2018