NetBSD-Java archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Problems with JDK 1.5.0 patchset 6
Hi,
I'm trying to update the jdk15 wip package to p6 and got one problem:
gmake[6]: Entering directory
`/pkgsrc/lang/jdk15/work.i386/j2se/make/sun/javac/javac'
/bin/mkdir -p
/pkgsrc/lang/jdk15/work.i386/control/build/bsd-i586/tmp/sun/com.sun.tools.javac/javac/obj
rm -f
/pkgsrc/lang/jdk15/work.i386/control/build/bsd-i586/tmp/sun/com.sun.tools.javac/javac/.classes.list
/pkgsrc/lang/jdk15/work.i386/control/build/bsd-i586/bin/java -classpath
../../../tools/CompileProperties CompileProperties
../../../../src/share/classes/com/sun/tools/javac/resources/compiler.properties
/pkgsrc/lang/jdk15/work.i386/control/build/bsd-i586/gensrc/com/sun/tools/javac/resources/compiler.java
dl failure on line 730Error: failed
/pkgsrc/lang/jdk15/work.i386/control/build/bsd-i586/lib/i386/client/libjvm.so,
because /usr/lib/libstdc++.so.6: Undefined PLT symbol "_Unwind_GetIP" (symnum =
161)
It seems for me this is related to a problem with libgcc_s.
partly nm output of libjvm.so:
0032ecbc t _Unwind_Backtrace
0032d8b8 t _Unwind_DeleteException
0032db08 t _Unwind_FindEnclosingFunction
00330544 t _Unwind_Find_FDE
0032f040 t _Unwind_ForcedUnwind
0032edf8 t _Unwind_ForcedUnwind_Phase2
0032d860 t _Unwind_GetCFA
0032d8a0 t _Unwind_GetDataRelBase
0032d914 t _Unwind_GetGR
0032d86c t _Unwind_GetIP
0032d888 t _Unwind_GetLanguageSpecificData
0032d894 t _Unwind_GetRegionStart
0032d8ac t _Unwind_GetTextRelBase
0032f0f0 t _Unwind_RaiseException
0032ed54 t _Unwind_RaiseException_Phase2
0032ef8c t _Unwind_Resume
0032f23c t _Unwind_Resume_or_Rethrow
0032d8d8 t _Unwind_SetGR
0032d878 t _Unwind_SetIP
ldd output:
/pkgsrc/lang/jdk15/work.i386/control/build/bsd-i586/lib/i386/client/libjvm.so:
-lstdc++.6 => /usr/lib/libstdc++.so.6
-lm.0 => /usr/lib/libm387.so.0
-lm.0 => /usr/lib/libm.so.0
-lpthread.0 => /usr/lib/libpthread.so.0
The missing libgcc_s is kind of expected because it is linked with
-static-libgcc,
but I found this page: http://www.trilithium.com/johan/2005/06/static-libstdc/
Which makes me think that this won't work.
Reading in the Changelog bought me to these lines:
2007-01-20 Saturday 17:49 christos
* hotspot/build/bsd/makefiles/: gcc.make, vm.make:
From Chuck Silvers:
Copy the logic for -static-libgcc to the hotspot build, eliminating the
need for the -lgcc_s hack.
2007-01-16 Tuesday 21:27 christos
* hotspot/build/bsd/makefiles/vm.make:
Add -lgcc_s for the NetBSD build. This is necessary for gcc-4 because
linking with -lstdc++ requires -lgcc_eh or -lgcc_s to do the exception
handling. Perhaps it is easier to just compile with g++ and let things
happen automatically rather than expose the ugly guts of the libraries.
Anyway, most platforms that use gcc-4 will need this until we fix it
properly.
2007-01-15 Monday 04:50 christos
* j2se/make/common/Defs-bsd.gmk:
XXX: For now link with -lgcc_s for _Unwind_Restore. This is on NetBSD
with:
gcc version 4.1.2 20070110 prerelease (NetBSD nb1 20070110)
Btw, this is with NetBSD-current on i386.
Attached is the output for the linking of libjvm.so, where libjvm was linked two
times (and I don't mean the libjvm_g.so).
Thanks,
Bernd
gcc -shared -mimpure-text -fPIC -static-libgcc -Xlinker -O1 -Xlinker
--version-script=/pkgsrc/lang/jdk15/work.i386/hotspot/build/bsd/makefiles/mapfile-vers-product
-Xlinker -soname=libjvm.so -o libjvm.so accessFlags.o ad_i486.o
ad_i486_clone.o ad_i486_expand.o ad_i486_format.o ad_i486_gen.o ad_i486_misc.o
ad_i486_peephole.o ad_i486_pipeline.o adapters.o adapters_i486.o addnode.o
adjoiningGenerations.o adjoiningVirtualSpaces.o ageTable.o allocation.o
aprofiler.o arguments.o array.o arrayKlass.o arrayKlassKlass.o arrayOop.o
asPSOldGen.o asPSYoungGen.o assembler.o assembler_bsd_i486.o assembler_i486.o
atomic.o biasedLocking.o binaryTreeDictionary.o bitMap.o block.o
blockOffsetTable.o buildOopMap.o bytecode.o bytecodeHistogram.o bytecodeInfo.o
bytecodeStream.o bytecodeTracer.o bytecodes.o bytecodes_i486.o c2_globals.o
c2_init_i486.o c2compiler.o cInterpreter.o cSpaceCounters.o callGenerator.o
callnode.o carRememberedSet.o cardTableExtension.o cardTableModRefBS.o
cardTableRS.o cartable.o cfgnode.o cha.o chaitin.o chaitin_bsd.o ciArray.o
ciArrayKlass.o ciConstant.o ciConstantPoolCache.o ciEnv.o ciExceptionHandler.o
ciField.o ciFlags.o ciInstance.o ciInstanceKlass.o ciInstanceKlassKlass.o
ciKlass.o ciKlassKlass.o ciMethod.o ciMethodData.o ciMethodKlass.o
ciNullObject.o ciObjArrayKlass.o ciObjArrayKlassKlass.o ciObject.o
ciObjectFactory.o ciOopMap.o ciSignature.o ciStreams.o ciSymbol.o
ciSymbolKlass.o ciType.o ciTypeArray.o ciTypeArrayKlass.o
ciTypeArrayKlassKlass.o ciTypeFlow.o ciUtilities.o classFileParser.o
classFileStream.o classLoader.o classLoadingService.o classes.o classify.o
cmsLockVerifier.o coalesce.o codeBlob.o codeBuffer.o codeCache.o
collectedHeap.o collectorCounters.o collectorPolicy.o
compactibleFreeListSpace.o compactingPermGenGen.o compilationPolicy.o compile.o
compileBroker.o compileLog.o compiledIC.o compiledICHolderKlass.o
compiledICHolderOop.o compilerOracle.o compressedStream.o
concurrentMarkSweepGeneration.o concurrentMarkSweepThread.o connode.o
constMethodKlass.o constMethodOop.o constantPoolKlass.o constantPoolOop.o
constantTag.o cpCacheKlass.o cpCacheOop.o debug.o debugInfo.o debugInfoRec.o
debug_i486.o defNewGeneration.o deoptimization.o depChecker_i486.o dfa_i486.o
dict.o dictionary.o disassembler_i486.o divnode.o doCall.o domgraph.o dump.o
dump_md.o events.o evmCompat.o exceptionHandlerTable.o exceptions.o
extendedPC_i486.o fieldDescriptor.o fieldType.o filemap.o forte.o fprofiler.o
frame.o frame_i486.o freeBlockDictionary.o freeChunk.o freeList.o
gSpaceCounters.o gcCause.o gcLocker.o gcPolicyCounters.o gcStats.o
gcTaskManager.o gcTaskThread.o gcUtil.o gcm.o genCollectedHeap.o genMarkSweep.o
genRemSet.o generateOopMap.o generateOptoStub.o generation.o
generationCounters.o generationSpec.o getThread_bsd_i486.o globalDefinitions.o
globals.o graphKit.o growableArray.o handles.o hashtable.o heap.o heapDumper.o
heapInspection.o histogram.o hpi.o hpi_bsd.o icBuffer.o icBuffer_i486.o
icache.o icache_i486.o idealKit.o ifg.o ifnode.o immutableSpace.o indexSet.o
init.o instanceKlass.o instanceKlassKlass.o instanceOop.o instanceRefKlass.o
interfaceSupport.o interp_masm_i486.o interpreter.o interpreterRT_i486.o
interpreterRuntime.o interpreter_i486.o invocationCounter.o iterator.o java.o
javaAssertions.o javaCalls.o javaClasses.o jni.o jniCheck.o jniFastGetField.o
jniFastGetField_i486.o jniHandles.o jniId.o jvm.o jvm_bsd.o jvmdiEnter.o
jvmdiEnterTrace.o jvmdiEventFromJvmtiEvent.o jvmdiFrame.o jvmpi.o
jvmtiCodeBlobEvents.o jvmtiEnter.o jvmtiEnterTrace.o jvmtiEnv.o jvmtiEnvBase.o
jvmtiEnvThreadState.o jvmtiEventController.o jvmtiExport.o jvmtiExtensions.o
jvmtiGetLoadedClasses.o jvmtiImpl.o jvmtiManageCapabilities.o
jvmtiRedefineClasses.o jvmtiTagMap.o jvmtiThreadState.o klass.o klassKlass.o
klassOop.o klassVtable.o lcm.o library_call.o linkResolver.o live.o
loaderConstraints.o location.o locknode.o loopTransform.o loopnode.o loopopts.o
lowMemoryDetector.o machnode.o management.o markOop.o markSweep.o matcher.o
memRegion.o memnode.o memoryManager.o memoryPool.o memoryService.o
memprofiler.o methodComparator.o methodDataKlass.o methodDataOop.o
methodKlass.o methodLiveness.o methodOop.o monitorChunk.o mulnode.o multnode.o
mutableSpace.o mutex.o mutexLocker.o mutex_bsd.o nativeInst_i486.o
nativeLookup.o nmethod.o nmethod_i486.o node.o objArrayKlass.o
objArrayKlassKlass.o objArrayOop.o objectMonitor_bsd.o objectStartArray.o
onStackReplacement.o oop.o oopFactory.o oopMap.o oopMapCache.o oopRecorder.o
opcodes.o orderAccess.o os.o osThread.o osThread_bsd.o os_bsd.o os_bsd_i486.o
ostream.o output.o parGCAllocBuffer.o parMarkBitMap.o parNewGeneration.o
parallelScavengeHeap.o parse1.o parse2.o parse3.o parseHelper.o pcDesc.o
pcTasks.o perf.o perfData.o perfMemory.o perfMemory_bsd.o permGen.o phase.o
phaseX.o placeholders.o port.o postaloc.o preserveException.o privilegedStack.o
psAdaptiveSizePolicy.o psCompactionManager.o psGCAdaptivePolicyCounters.o
psGenerationCounters.o psMarkSweep.o psMarkSweepDecorator.o psOldGen.o
psParallelCompact.o psPermGen.o psPromotionLAB.o psPromotionManager.o
psScavenge.o psTasks.o psVirtualspace.o psYoungGen.o rawMonitor.o
recompilationMonitor.o referencePolicy.o referenceProcessor.o
referenceProcessorMT.o reflection.o reflectionUtils.o reg_split.o regalloc.o
register.o register_definitions_i486.o register_i486.o regmask.o relocInfo.o
relocInfo_i486.o relocator.o resourceArea.o restore.o rewriter.o rframe.o
rootnode.o runtime.o runtimeService.o runtime_i486.o safepoint.o
safepoint_bsd_i486.o scopeDesc.o serialize.o set.o shared.o sharedHeap.o
sharedRuntime.o sharedRuntimeTrig.o sharedRuntime_i486.o shared_i486.o
signature.o sizes.o space.o spaceCounters.o specialized_oop_closures.o
split_if.o stackMapFrame.o stackMapTable.o stackValue.o stackValueCollection.o
statSampler.o stubCodeGenerator.o stubGenerator_i486.o stubRoutines.o
stubRoutines_bsd.o stubRoutines_i486.o stubs.o subnode.o sweeper.o
symbolKlass.o symbolOop.o symbolTable.o synchronizer.o systemDictionary.o
task.o taskqueue.o templateTable.o templateTable_i486.o tenuredGeneration.o
thread.o threadCodeBuffer.o threadCritical_bsd.o threadLS_bsd_i486.o
threadLocalAllocBuffer.o threadLocalStorage.o threadService.o thread_bsd_i486.o
timer.o train.o trainGeneration.o type.o typeArrayKlass.o typeArrayKlassKlass.o
typeArrayOop.o universe.o unsafe.o utf8.o vectset.o verificationType.o
verifier.o vframe.o vframeArray.o vframe_hp.o virtualspace.o vmError.o
vmError_bsd.o vmStructs.o vmSymbols.o vmThread.o vm_operations.o vm_version.o
vm_version_i486.o vtableStubs.o vtune_bsd.o workgroup.o xmlstream.o
vtableStubs_i486.o bsd_i486.o -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic -lm -pthread
Linking vm...
echo Stripping vm... ; \
strip --strip-debug libjvm.so
Linking launcher...
echo Making signal interposition lib...; \
gcc -D_GNU_SOURCE -D_REENTRANT -static-libgcc -Xlinker -O1 -shared
-fPIC -o libjsig.so /pkgsrc/lang/jdk15/work.i386/hotspot/src/os/bsd/vm/jsig.c
Making signal interposition lib...
if [ -d /pkgsrc/lang/jdk15/work.i386/hotspot/agent -a "i486" != "ia64" ] ; then
\
/usr/pkg/bin/gmake -f vm.make libsaproc.so; \
fi
gmake[3]: Leaving directory
`/pkgsrc/lang/jdk15/work.i386/control/build/bsd-i586/hotspot-i586/tmp/bsd_i486_compiler2/product'
All done.
gcc -shared -mimpure-text -fPIC -static-libgcc -Xlinker -O1 -Xlinker
--version-script=/pkgsrc/lang/jdk15/work.i386/hotspot/build/bsd/makefiles/mapfile-vers-product
-Xlinker -soname=libjvm.so -o libjvm.so accessFlags.o adjoiningGenerations.o
adjoiningVirtualSpaces.o ageTable.o allocation.o aprofiler.o arguments.o
array.o arrayKlass.o arrayKlassKlass.o arrayOop.o asPSOldGen.o asPSYoungGen.o
assembler.o assembler_bsd_i486.o assembler_i486.o atomic.o biasedLocking.o
binaryTreeDictionary.o bitMap.o blockOffsetTable.o bytecode.o
bytecodeHistogram.o bytecodeStream.o bytecodeTracer.o bytecodes.o
bytecodes_i486.o c1_AllocTable.o c1_AllocTable_i486.o c1_CacheLocals.o
c1_CacheLocals_i486.o c1_Canonicalizer.o c1_CodeGenerator.o
c1_CodeGenerator_i486.o c1_CodeStubs_i486.o c1_Compilation.o c1_Compiler.o
c1_Defs.o c1_FrameMap.o c1_FrameMap_i486.o c1_GraphBuilder.o c1_IR.o
c1_Instruction.o c1_InstructionPrinter.o c1_Items.o c1_Items_i486.o c1_LIR.o
c1_LIRAssembler.o c1_LIRAssembler_i486.o c1_LIREmitter.o c1_LIREmitter_i486.o
c1_LIROptimizer.o c1_Loops.o c1_MacroAssembler_i486.o c1_Optimizer.o c1_RInfo.o
c1_RInfo_i486.o c1_RegAlloc.o c1_RegAlloc_i486.o c1_Runtime1.o
c1_Runtime1_i486.o c1_ScanBlocks.o c1_ValueMap.o c1_ValueSet.o c1_ValueStack.o
c1_ValueType.o c1_globals.o cInterpreter.o cSpaceCounters.o carRememberedSet.o
cardTableExtension.o cardTableModRefBS.o cardTableRS.o cartable.o cha.o
ciArray.o ciArrayKlass.o ciBytecodeStream.o ciConstant.o ciConstantPoolCache.o
ciEnv.o ciExceptionHandler.o ciField.o ciFlags.o ciInstance.o ciInstanceKlass.o
ciInstanceKlassKlass.o ciKlass.o ciKlassKlass.o ciMethod.o ciMethodData.o
ciMethodKlass.o ciNullObject.o ciObjArrayKlass.o ciObjArrayKlassKlass.o
ciObject.o ciObjectFactory.o ciOopMap.o ciSignature.o ciStreams.o ciSymbol.o
ciSymbolKlass.o ciType.o ciTypeArray.o ciTypeArrayKlass.o
ciTypeArrayKlassKlass.o ciUtilities.o classFileParser.o classFileStream.o
classLoader.o classLoadingService.o classify.o cmsLockVerifier.o codeBlob.o
codeBuffer.o codeCache.o collectedHeap.o collectorCounters.o collectorPolicy.o
compactibleFreeListSpace.o compactingPermGenGen.o compilationPolicy.o
compileBroker.o compileLog.o compiledIC.o compiledICHolderKlass.o
compiledICHolderOop.o compilerOracle.o compressedStream.o
concurrentMarkSweepGeneration.o concurrentMarkSweepThread.o constMethodKlass.o
constMethodOop.o constantPoolKlass.o constantPoolOop.o constantTag.o
cpCacheKlass.o cpCacheOop.o debug.o debugInfo.o debugInfoRec.o debug_i486.o
defNewGeneration.o deoptimization.o depChecker_i486.o dictionary.o
disassembler_i486.o dump.o dump_md.o events.o evmCompat.o
exceptionHandlerTable.o exceptions.o extendedPC_i486.o fieldDescriptor.o
fieldType.o filemap.o forte.o fprofiler.o frame.o frame_i486.o
freeBlockDictionary.o freeChunk.o freeList.o gSpaceCounters.o gcCause.o
gcLocker.o gcPolicyCounters.o gcStats.o gcTaskManager.o gcTaskThread.o gcUtil.o
genCollectedHeap.o genMarkSweep.o genRemSet.o generateOopMap.o generation.o
generationCounters.o generationSpec.o getThread_bsd_i486.o globalDefinitions.o
globals.o growableArray.o handles.o hashtable.o heap.o heapDumper.o
heapInspection.o histogram.o hpi.o hpi_bsd.o icBuffer.o icBuffer_i486.o
icache.o icache_i486.o immutableSpace.o init.o instanceKlass.o
instanceKlassKlass.o instanceOop.o instanceRefKlass.o interfaceSupport.o
interp_masm_i486.o interpreter.o interpreterRT_i486.o interpreterRuntime.o
interpreter_i486.o invocationCounter.o iterator.o java.o javaAssertions.o
javaCalls.o javaClasses.o jni.o jniCheck.o jniFastGetField.o
jniFastGetField_i486.o jniHandles.o jniId.o jvm.o jvm_bsd.o jvmdiEnter.o
jvmdiEnterTrace.o jvmdiEventFromJvmtiEvent.o jvmdiFrame.o jvmpi.o
jvmtiCodeBlobEvents.o jvmtiEnter.o jvmtiEnterTrace.o jvmtiEnv.o jvmtiEnvBase.o
jvmtiEnvThreadState.o jvmtiEventController.o jvmtiExport.o jvmtiExtensions.o
jvmtiGetLoadedClasses.o jvmtiImpl.o jvmtiManageCapabilities.o
jvmtiRedefineClasses.o jvmtiTagMap.o jvmtiThreadState.o klass.o klassKlass.o
klassOop.o klassVtable.o linkResolver.o loaderConstraints.o location.o
lowMemoryDetector.o management.o markOop.o markSweep.o memRegion.o
memoryManager.o memoryPool.o memoryService.o memprofiler.o methodComparator.o
methodDataKlass.o methodDataOop.o methodKlass.o methodOop.o monitorChunk.o
mutableSpace.o mutex.o mutexLocker.o mutex_bsd.o nativeInst_i486.o
nativeLookup.o nmethod.o nmethod_i486.o objArrayKlass.o objArrayKlassKlass.o
objArrayOop.o objectMonitor_bsd.o objectStartArray.o onStackReplacement.o oop.o
oopFactory.o oopMap.o oopMapCache.o oopRecorder.o orderAccess.o os.o osThread.o
osThread_bsd.o os_bsd.o os_bsd_i486.o ostream.o parGCAllocBuffer.o
parMarkBitMap.o parNewGeneration.o parallelScavengeHeap.o pcDesc.o pcTasks.o
perf.o perfData.o perfMemory.o perfMemory_bsd.o permGen.o placeholders.o
preserveException.o privilegedStack.o psAdaptiveSizePolicy.o
psCompactionManager.o psGCAdaptivePolicyCounters.o psGenerationCounters.o
psMarkSweep.o psMarkSweepDecorator.o psOldGen.o psParallelCompact.o psPermGen.o
psPromotionLAB.o psPromotionManager.o psScavenge.o psTasks.o psVirtualspace.o
psYoungGen.o rawMonitor.o recompilationMonitor.o referencePolicy.o
referenceProcessor.o referenceProcessorMT.o reflection.o reflectionUtils.o
register.o register_definitions_i486.o register_i486.o relocInfo.o
relocInfo_i486.o relocator.o resourceArea.o restore.o rewriter.o rframe.o
runtimeService.o safepoint.o safepoint_bsd_i486.o scopeDesc.o serialize.o
shared.o sharedHeap.o sharedRuntime.o sharedRuntimeTrig.o sharedRuntime_i486.o
shared_i486.o signature.o sizes.o space.o spaceCounters.o
specialized_oop_closures.o stackMapFrame.o stackMapTable.o stackValue.o
stackValueCollection.o statSampler.o stubCodeGenerator.o stubGenerator_i486.o
stubRoutines.o stubRoutines_bsd.o stubRoutines_i486.o stubs.o sweeper.o
symbolKlass.o symbolOop.o symbolTable.o synchronizer.o systemDictionary.o
task.o taskqueue.o templateTable.o templateTable_i486.o tenuredGeneration.o
thread.o threadCodeBuffer.o threadCritical_bsd.o threadLS_bsd_i486.o
threadLocalAllocBuffer.o threadLocalStorage.o threadService.o thread_bsd_i486.o
timer.o train.o trainGeneration.o typeArrayKlass.o typeArrayKlassKlass.o
typeArrayOop.o universe.o unsafe.o utf8.o verificationType.o verifier.o
vframe.o vframeArray.o vframe_hp.o virtualspace.o vmError.o vmError_bsd.o
vmStructs.o vmSymbols.o vmThread.o vm_operations.o vm_version.o
vm_version_i486.o vtableStubs.o vtableStubs_i486.o vtune_bsd.o workgroup.o
xmlstream.o c1_LIROptimizer_i486.o bsd_i486.o -Wl,-Bstatic -lstdc++
-Wl,-Bdynamic -lm -pthread
Linking vm...
echo Stripping vm... ; \
strip --strip-debug libjvm.so
Stripping vm...
Linking launcher...
echo Making signal interposition lib...; \
gcc -D_GNU_SOURCE -D_REENTRANT -static-libgcc -Xlinker -O1 -shared
-fPIC -o libjsig.so /pkgsrc/lang/jdk15/work.i386/hotspot/src/os/bsd/vm/jsig.c
Making signal interposition lib...
if [ -d /pkgsrc/lang/jdk15/work.i386/hotspot/agent -a "i486" != "ia64" ] ; then
\
/usr/pkg/bin/gmake -f vm.make libsaproc.so; \
fi
gmake[3]: Leaving directory
`/pkgsrc/lang/jdk15/work.i386/control/build/bsd-i586/hotspot-i586/tmp/bsd_i486_compiler1/product'
All done.
Home |
Main Index |
Thread Index |
Old Index