[Vm-dev] Cog on linux

Rob Withers reefedjib at yahoo.com
Thu Jul 15 21:54:58 UTC 2010


(I am having trouble quoting Eliot's email as well.  Plain text is best)

I finally figured out how to specify to configure to use -m32 on the CFLAGS 
entries.  It is a part of the invocation of configure.

../../platforms/unix/config/configure 
CFLAGS="-m32 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 
 -DCOGMTVM=0" LIBS=-lpthread

I seem to have gotten past the problem with sqUnixHeartbeat.c and now I have 
a new problem:

vm/vm.a(sqExternalSemaphores.o): In function `doSignalExternalSemaphores':
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:198: 
undefined reference to `sqLowLevelMFence'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:213: 
undefined reference to `sqLowLevelMFence'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:184: 
undefined reference to `sqLowLevelMFence'
vm/vm.a(sqExternalSemaphores.o): In function `signalSemaphoreWithIndex':
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:130: 
undefined reference to `sqLowLevelMFence'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:131: 
undefined reference to `sqAtomicAddConst'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:147: 
undefined reference to `sqLowLevelMFence'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:148: 
undefined reference to `sqCompareAndSwap'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:152: 
undefined reference to `sqLowLevelMFence'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:153: 
undefined reference to `sqCompareAndSwap'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:135: 
undefined reference to `sqLowLevelMFence'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:136: 
undefined reference to `sqCompareAndSwap'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:140: 
undefined reference to `sqLowLevelMFence'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqExternalSemaphores.c:141: 
undefined reference to `sqCompareAndSwap'
vm/vm.a(sqTicker.o): In function `checkHighPriorityTickees':
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqTicker.c:211: 
undefined reference to `sqLowLevelMFence'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqTicker.c:217: 
undefined reference to `sqCompareAndSwapRes'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqTicker.c:227: 
undefined reference to `sqLowLevelMFence'
vm/vm.a(sqTicker.o): In function `addHighPriorityTickee':
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqTicker.c:185: 
undefined reference to `sqLowLevelMFence'
vm/vm.a(sqTicker.o): In function `ioSynchronousCheckForEvents':
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqTicker.c:128: 
undefined reference to `sqLowLevelMFence'
vm/vm.a(sqTicker.o): In function `addHighPriorityTickee':
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqTicker.c:193: 
undefined reference to `sqLowLevelMFence'
/home1/vawhigso/public_html/squeakelib/Cog/platforms/Cross/vm/sqTicker.c:193: 
undefined reference to `sqLowLevelMFence'
collect2: ld returned 1 exit status
make: *** [squeak] Error 1

--------------------------------------------------
From: "Levente Uzonyi" <leves at elte.hu>
Sent: Thursday, July 15, 2010 3:38 PM
To: "Squeak Virtual Machine Development Discussion" 
<vm-dev at lists.squeakfoundation.org>
Subject: Re: [Vm-dev] Cog on linux

>
> On Thu, 15 Jul 2010, Rob Withers wrote:
>
> (Pine is unable to quote your mail...)
>
> The question is: is your OS 32 or 64-bit? The CPU doesn't matter here. If 
> your OS is 64-bit then you'll probably need the gcc-multilibs package (or 
> equivalent for your platform) and as Eliot suggested the -m32 switch for 
> compilation and linking. To run the resulting VM, you'll need the 
> ia32-libs package (or equivalent for your platform), but you already have 
> that if you can run the prebuilt SqueakVM.
>
>
> Levente 



More information about the Vm-dev mailing list