[VM] [WIN32] [BUG] Adventures in building

John M McIntosh johnmci at smalltalkconsulting.com
Tue Feb 19 02:36:32 UTC 2002


>Then I built, using MSVC 6.  Many errors ensued.  Many were caused 
>by the following two items:
>1. sqVirtualMachine.h defines a type "long long".  MSVC hasn't heard of it.

If you look at

sqVirtualMachine.h

You need to change the

#ifndef ACORN
         #define squeakInt64 long long
#else
         #define squeakInt64 long int
#endif


to some magic 64bit integer type. If your compiler does not support 
64 bit integers, then you need to change and submit the proper #ifdef 
to cast squeakInt64 to a 32bit integer.

Then you need to figure out if you have 64bit file io support and 
what type that is by defining a proper

squeakFileOffsetType in sqPlatformSpecific.h

many unix systems typdef that to off_t

#define squeakFileOffsetType off_t

however many unix like clones define off_t as 32bit.

The only way to look is to consider what type and how many bits are passed to
the routine that does say file seeking for your platform. Usually 
this is fseek, but might be overridden to some other oddball api.

I have heard rumors that some fseeks are only 32bits layed on 64bit 
file systems to tie you to the vendor api, versus say an open source 
api. Yes we support fseek but it's a crippled fseek...

-- 
--
===========================================================================
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================



More information about the Squeak-dev mailing list