<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>
Possible a gcc bug.<br><br>Possibly related to:<br> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20218<br><br><br>Possible fix is to stop using attribte(hidden) and such, but really, they are good things.<br><br><br>I can poke around later maybe.<br>I think AMD64_LINUX is a relatively popular platform here.<br><br>Try with a newer gcc/ld?<br><br><br>Try removing this:<br><br><pre>#if __GNUC__ >= 4
#pragma GCC visibility push(hidden)
#endif
<br><br>in ThreadPThreadC.c.<br><br>if that works, let's keep it, but move stuff around.<br>Like, maybe move <br>void SignalHandler(int signo, siginfo_t *info, void *context);
</pre>above it, or put another decoration on that.<br><br> - Jay<br><br><div><div id="SkyDrivePlaceholder"></div>> To: m3devel@elegosoft.com<br>> Date: Wed, 2 Nov 2011 18:39:30 -0700<br>> From: mika@async.caltech.edu<br>> Subject: [M3devel] Trying to set up on AMD64_LINUX<br>> <br>> Ran into an error I don't recognize, any ideas, anyone?<br>> <br>> myriam5% cm3 -commands<br>> --- building in AMD64_LINUX ---<br>> <br>> cd AMD64_LINUX<br>> ignoring ../src/m3overrides<br>> <br>> rm .M3SHIP<br>> rm .M3OVERRIDES<br>> inhale libm3core.m3x<br>> <br>> new source -> compiling ThreadPThreadC.c<br>> gcc -gstabs+ -m64 -fPIC -I../src/unix/Common -I../src -I../src/Csupport/Common -I../src/Csupport/little-endian -I../src/Csupport/libgcc -I../src/runtime/common -I../src/runtime/POSIX -I../src/runtime/ex_frame -I../src/thread/Common -I../src/thread/PTHREAD -I../src/C/Common -I../src/float/C99 -I../src/time/POSIX -c ../src/thread/PTHREAD/ThreadPThreadC.c<br>> <br>> new "ThreadPThreadC.o" -> archiving libm3core.a<br>> rm libm3core.a<br>> fgrep m3gcdefs /ufs/arpa/mika/cm3/pkg/m3core/AMD64_LINUX/.M3EXPORTS 2>/dev/null >/dev/null<br>> rm libm3core.a<br>> rm libm3core.a.sa<br>> rm libm3core.so<br>> rm libm3core.so.5<br>> rm libm3core.exp<br>> ar crus libm3core.a hand.o dtoa.o libgcc.o RTHooks.io RTHooks.mo RT0.io RT0.mo RuntimeError.io RuntimeError.mo Compiler.io Compiler.mo RTAllocator.io RTAllocator.mo RTAllocCnts.io RTAllocStats.io RTAllocStats.mo RTHeap.io RTHeap.mo RTHeapInfo.io RTHeapInfo.mo RTHeapMap.io RTHeapMap.mo RTHeapRep.io RTHeapRep.mo RTHeapStats.io RTHeapStats.mo RTCollector.io RTCollector.mo RTCollectorSRC.io RTWeakRef.io RTIO.io RTIO.mo RTIOc.o RTLinkerX.io RTLinker.io RTLinker.mo RTLinkerC.o RTDebug.io RTDebug.mo RTDebugC.o RTError.io RTError.mo RTException.io RTException.mo RTMapOp.io RTMapOp.mo RTMisc.io RTMisc.mo RTMiscC.o RTModule.io RTPacking.io RTPacking.mo RTParams.io RTParams.mo RTProcedure.io RTProcedure.mo RTProcess.io RTProcess.mo RTProcessC.o RTThread.io RTTipe.io RTTipe.mo RTType.io RTType.mo RTTypeFP.io RTTypeFP.mo RTTypeMap.io RTTypeMap.mo RTutils.io RTutils.mo RTHeapDebug.io RTHeapDebug.mo RTArgs.io RTHeapEvent.io RTProcedureSRC.io RTSignal.io RTStack.io RTTypeSRC.io RTOS.io RTMac<br>> hine.io RTArgs.mo RTOS.mo RTPerfTool.io RTPerfTool.mo RTOSbrk.o RTSignalPrivate.io RTSignalC.o RTSignalC.io RTSignal.mo RTExFrame.mo RTStackC.o Thread.io ThreadF.io Scheduler.io SchedulerPosix.io ThreadInternal.io ThreadInternal.o MutexRep.io ThreadEvent.io ThreadPThread.io ThreadPThread.mo ThreadPThreadC.o WinBaseTypes.io WinDef.io WinDef.mo WinNT.io WinNT.mo UtimeC.o UnixC.o UnixLink.o Uexec.io Uexec.o Unetdb.io Unetdb.o Umman.o Ugrp.io Ugrp.o Uin.o Uugid.o Uuio.o Uutmp.o Usignal.o Upwd.o Uprocess.o Usignal.io Uconstants.o Uutmp.io Umman.io UstatC.o Uuio.io Upwd.io Uugid.io Uprocess.io Unix.io Unix.mo Utime.io Utypes.io Uerror.io Usched.io Usocket.io Usocket.o Ustat.io Udir.io UdirC.o Uin.io Cerrno.io Cstddef.io Cstdint.io Cstdlib.io CstdlibC.o Ctypes.io M3toC.io M3toC.mo CerrnoC.o Cstring.io CstringC.o Cstdio.io CstdioC.o Csignal.io CsignalC.o Csetjmp.io BasicCtypes.io RealFloat.io LongFloat.io ExtendedFloat.io IEEESpecial.io IEEESpecial.mo Real.mo LongReal.mo Extended.mo<br>> DragonInt.io DragonInt.mo DragonT.io DragonT.mo Real.io LongReal.io Extended.io RealFloat.mo LongFloat.mo ExtendedFloat.mo RealRep.io LongRealRep.io FPU.io FPU.mo FloatMode.io FloatMode.mo FloatModeC.io FloatModeC.o Time.io Tick.io Date.io FmtTime.io FmtTime.mo TickPortable.mo TimePosix.io TimePosix.mo DatePosix.io DatePosix.mo DatePosixC.o TimePosixC.o CConvert.io CConvert.mo Convert.io Convert.mo String8.io String8.mo String16.io String16.mo Text.io Text.mo TextClass.io TextClass.mo TextLiteral.io TextLiteral.mo Text8.io Text8.mo Text8Short.io Text8Short.mo Text8CString.io Text8CString.mo Text16.io Text16.mo Text16Short.io Text16Short.mo TextSub.io TextSub.mo TextCat.io TextCat.mo TextConv.io TextConv.mo Fingerprint.io Fingerprint.mo Poly.io Poly.mo PolyBasis.io PolyBasis.mo Main.io WeakRef.io WeakRef.mo WordRep.io Word.io LongRep.io Long.io Word.mo Long.mo Boolean.io Boolean.mo Char.io Char.mo Int32.io Int32.mo Int64.io Int64.mo Integer.io Integer.mo Longint.io Longint.m<br>> o Refany.io Refany.mo ASCII.io ASCII.mo WideChar.io WideChar.mo Unicode.io Unicode.mo Address.io Address.mo<br>> gcc -gstabs+ -m64 -fPIC -Wl,-z,now -Wl,-z,origin -Bsymbolic -Wl,--fatal-warnings -Wl,-rpath,\$ORIGIN -Wl,-rpath,\$ORIGIN/../lib -Wl,--warn-common -Wl,-rpath,/ufs/arpa/mika/cm3/bin/../lib -shared -Wl,-soname,libm3core.so.5 -o libm3core.so.5 hand.o dtoa.o libgcc.o RTHooks.io RTHooks.mo RT0.io RT0.mo RuntimeError.io RuntimeError.mo Compiler.io Compiler.mo RTAllocator.io RTAllocator.mo RTAllocCnts.io RTAllocStats.io RTAllocStats.mo RTHeap.io RTHeap.mo RTHeapInfo.io RTHeapInfo.mo RTHeapMap.io RTHeapMap.mo RTHeapRep.io RTHeapRep.mo RTHeapStats.io RTHeapStats.mo RTCollector.io RTCollector.mo RTCollectorSRC.io RTWeakRef.io RTIO.io RTIO.mo RTIOc.o RTLinkerX.io RTLinker.io RTLinker.mo RTLinkerC.o RTDebug.io RTDebug.mo RTDebugC.o RTError.io RTError.mo RTException.io RTException.mo RTMapOp.io RTMapOp.mo RTMisc.io RTMisc.mo RTMiscC.o RTModule.io RTPacking.io RTPacking.mo RTParams.io RTParams.mo RTProcedure.io RTProcedure.mo RTProcess.io RTProcess.mo RTProcessC.o RTThread.io RTTipe.io RT<br>> Tipe.mo RTType.io RTType.mo RTTypeFP.io RTTypeFP.mo RTTypeMap.io RTTypeMap.mo RTutils.io RTutils.mo RTHeapDebug.io RTHeapDebug.mo RTArgs.io RTHeapEvent.io RTProcedureSRC.io RTSignal.io RTStack.io RTTypeSRC.io RTOS.io RTMachine.io RTArgs.mo RTOS.mo RTPerfTool.io RTPerfTool.mo RTOSbrk.o RTSignalPrivate.io RTSignalC.o RTSignalC.io RTSignal.mo RTExFrame.mo RTStackC.o Thread.io ThreadF.io Scheduler.io SchedulerPosix.io ThreadInternal.io ThreadInternal.o MutexRep.io ThreadEvent.io ThreadPThread.io ThreadPThread.mo ThreadPThreadC.o WinBaseTypes.io WinDef.io WinDef.mo WinNT.io WinNT.mo UtimeC.o UnixC.o UnixLink.o Uexec.io Uexec.o Unetdb.io Unetdb.o Umman.o Ugrp.io Ugrp.o Uin.o Uugid.o Uuio.o Uutmp.o Usignal.o Upwd.o Uprocess.o Usignal.io Uconstants.o Uutmp.io Umman.io UstatC.o Uuio.io Upwd.io Uugid.io Uprocess.io Unix.io Unix.mo Utime.io Utypes.io Uerror.io Usched.io Usocket.io Usocket.o Ustat.io Udir.io UdirC.o Uin.io Cerrno.io Cstddef.io Cstdint.io Cstdlib.io CstdlibC.o Ctypes.io <br>> M3toC.io M3toC.mo CerrnoC.o Cstring.io CstringC.o Cstdio.io CstdioC.o Csignal.io CsignalC.o Csetjmp.io BasicCtypes.io RealFloat.io LongFloat.io ExtendedFloat.io IEEESpecial.io IEEESpecial.mo Real.mo LongReal.mo Extended.mo DragonInt.io DragonInt.mo DragonT.io DragonT.mo Real.io LongReal.io Extended.io RealFloat.mo LongFloat.mo ExtendedFloat.mo RealRep.io LongRealRep.io FPU.io FPU.mo FloatMode.io FloatMode.mo FloatModeC.io FloatModeC.o Time.io Tick.io Date.io FmtTime.io FmtTime.mo TickPortable.mo TimePosix.io TimePosix.mo DatePosix.io DatePosix.mo DatePosixC.o TimePosixC.o CConvert.io CConvert.mo Convert.io Convert.mo String8.io String8.mo String16.io String16.mo Text.io Text.mo TextClass.io TextClass.mo TextLiteral.io TextLiteral.mo Text8.io Text8.mo Text8Short.io Text8Short.mo Text8CString.io Text8CString.mo Text16.io Text16.mo Text16Short.io Text16Short.mo TextSub.io TextSub.mo TextCat.io TextCat.mo TextConv.io TextConv.mo Fingerprint.io Fingerprint.mo Poly.io Poly.mo Poly<br>> Basis.io PolyBasis.mo Main.io WeakRef.io WeakRef.mo WordRep.io Word.io LongRep.io Long.io Word.mo Long.mo Boolean.io Boolean.mo Char.io Char.mo Int32.io Int32.mo Int64.io Int64.mo Integer.io Integer.mo Longint.io Longint.mo Refany.io Refany.mo ASCII.io ASCII.mo WideChar.io WideChar.mo Unicode.io Unicode.mo Address.io Address.mo -lm -pthread<br>> /usr/bin/ld: ThreadPThreadC.o: relocation R_X86_64_PC32 against `ThreadPThread__SignalHandler' can not be used when making a shared object; recompile with -fPIC<br>> /usr/bin/ld: final link failed: Bad value<br>> collect2: ld returned 1 exit status<br>> make_lib => 1<br>> librarian failed building: m3core<br>> Fatal Error: package build failed<br>> rm m3make.args<br>> cd ..<br>> <br>> % uname -a<br>> Linux noname5 2.6.18-194.32.1.el5 #1 SMP Wed Jan 5 17:52:25 EST 2011 x86_64 x86_64 x86_64 GNU/Linux<br>> <br></div> </div></body>
</html>