Building a VM: the adventure continues

David T. Lewis lewis at mail.msen.com
Sun Aug 21 06:00:37 UTC 2005


Ross,

I've seen this a few times before but have not tracked down the
root cause. Try telling VMMaker to put the sources in <whatever>.src
rather than <whatever>.src32. Then run configure and make, and see
if things work better.

It's not your compiler, it's just some configuration glitch.

Dave

On Sat, Aug 20, 2005 at 07:13:55PM -0700, Ross Boylan wrote:
> This time I tried building with the 2 patches David Lewis supplied.
> This time I got through all the steps in squeak/VMMaker to make the
> sources.  As soon as I tried to build them the build failed.
> 
> My system has gone to gcc 4.0 as the default compiler, and I suspect it
> is being stricter than 3.3, which I was using before.  On the other
> hand, there was some speculation that the problems were caused by gcc,
> so a newer version might help there.
> 
> 0. get current svn sources, which are now v 1242
> 1. base Squeak3.8-665
> 2. load VMMaker-tpr.37. save.
> 3. load JMMGCMonitor.4.cs. save.
> 4. VMM38-gc-instrument-image.1.cs. save.
> 5. VMM38-64bit-imageUpdates.1.cs. save.
> 6. open VMMaker. make all internal plugins.
>    leave "64 bit VM?" unchecked!
>    save vmmaker.config from VMMaker.
> 7. generate entire
> 
> Then I applied the two patches provided by David in his July 24 message:
> $ patch platforms/Cross/vm/sqMemoryAccess.h sqMemoryAccess.h.diff
> patching file platforms/Cross/vm/sqMemoryAccess.h
> $ patch platforms/unix/vm/sqUnixExternalPrims.c sqUnixExternalPrims.c.diff
> patching file platforms/unix/vm/sqUnixExternalPrims.c
> 
> (I used patches rather than the whole files he supplied in case there had been subsequent changes).
> 
> ross at iron:/usr/local/src/squeak$ mkdir bld
> ross at iron:/usr/local/src/squeak$ cd bld
> ross at iron:/usr/local/src/squeak/bld$ ../platforms/unix/config/configure --prefix=/usr/local/src/playpen
> and finally, make.  Here's a sampling of the log
> 
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:25:3: warning: #warning 
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:26:3: warning: #warning ***************************************************
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:27:3: warning: #warning *
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:28:3: warning: #warning * interp.h not found -- defaulting to a 32-bit VM
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:29:3: warning: #warning *
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:30:3: warning: #warning * update your image-side VM sources to the latest
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:31:3: warning: #warning * version to avoid this message
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:32:3: warning: #warning *
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:33:3: warning: #warning ***************************************************
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:34:3: warning: #warning 
> gnu-interp.c:12:1: warning: "byteAt" redefined
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:116:1: warning: this is the location of the previous definition
> gnu-interp.c:13:1: warning: "byteAtput" redefined
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:117:1: warning: this is the location of the previous definition
> gnu-interp.c:14:1: warning: "longAt" redefined
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:122:1: warning: this is the location of the previous definition
> gnu-interp.c:15:1: warning: "longAtput" redefined
> /usr/local/src/squeak/platforms/Cross/vm/sqMemoryAccess.h:123:1: warning: this is the location of the previous definition
> gnu-interp.c:738: error: syntax error before 'const'
> gnu-interp.c:739: warning: initialization makes integer from pointer without a cast
> [many like that]
> 
> This is probably what stopped it:
> gnu-interp.c:738: error: syntax error before 'const'
> 
> The offending line is
> fptr const primitiveTable[] = {
> 
> 
> I'm doing this on a faster machine now, so I can get nowhere with much greater speed :)
> 
> I'm guessing I'm still suffering from version mismatch.
> 
> Ross Boylan
> 
> 
> 



More information about the Squeak-dev mailing list