Squeak3.7a-nnnn image on unix?

Michael Roberts mike at mjr104.co.uk
Wed Mar 31 17:17:59 UTC 2004


Hi,

On Wed, Mar 31, 2004 at 08:17:04AM -0800, Peter William Lount wrote:
> 
> Here is the sequence that I'm now doing:
> 
> Here is the results of :
> 
> sensei# pwd
> /disk0e/localstorage/servers/neds_squeak/squeak
> sensei# ./platforms/unix/config/configure
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> /disk0e/localstorage/servers/neds_squeak/squeak/platforms/unix/config/missin
> g: Can't open
> /disk0e/localstorage/servers/neds_squeak/squeak/platforms/unix/config/missin
> g: No such file or directory
> configure: WARNING: `missing' script is too old or missing
> checking for gawk... no
> checking for mawk... no
> checking for nawk... nawk
> checking whether make sets ${MAKE}... yes
> checking sanity of VMMaker src directory... bad
> missing dir: /disk0e/localstorage/servers/neds_squeak/squeak/src
> 
> Ok, it builds the configure script with the down graded aclocal, but now it
> reports that two files/directories are missing:
> 
> ../squeak/platforms/unix/config/missing:
I'm not sure what this is but I get that warning too
> and
> /disk0e/localstorage/servers/neds_squeak/squeak/src
> 
> It looks like the ../squeak/src isn't being downloaded from the cvs server.
> 
ah no.  this is the next stage.

You need to use an existing Squeak system to create the src directory.  This is the bootstrap, if that is the right phrase, for making the VM.  

* You need an existing VM that is going to work on your system
* I tend to get a 3.6 version off Ian's site

http://www-sor.inria.fr/~piumarta/squeak/

so for me on Linux

wget http://www-sor.inria.fr/~piumarta/squeak/devel/dist/Squeak-3.6g-2.i686-pc-linux-gnu.tar.gz
tar -xzvf Squeak-3.6g-2.i686-pc-linux-gnu.tar.gz

* and a suitable image.  I use the latest 3.6 image

wget http://www-sor.inria.fr/~piumarta/squeak/devel/dist/Squeak-3.6g-5420.image.tar.gz
tar -xvzf Squeak-3.6g-5420.image.tar.gz

I don't want to install this VM as root because I don't want to modify my system so I'm just going to do this locally

cp Squeak-3.6g-2/usr/local/lib/squeak/Squeak3.6g-5420.image.gz .
cp Squeak-3.6g-2/usr/local/lib/squeak/Squeak3.6g-5420.changes.gz .
gunzip Squeak3.6g-5420.changes.gz Squeak3.6g-5420.image.gz

* you also need the sources file
I already have these on my system, you probably do too, but for those reading who also need it

wget http://www-sor.inria.fr/~piumarta/squeak/unix/release/Squeak-3.sources.tar.gz

or link it from where ever it might be

ln -s ~mike/src/Squeak-3/usr/local/lib/squeak/SqueakV3.sources
  
* now fire up this existing squeak system + VM
since I haven't installed the 3.6 VM as root I need to do

./Squeak-3.6g-2/i686-pc-linux-gnu/usr/local/lib/squeak/3.6g-2/squeak -plugins ./Squeak-3.6g-2/i686-pc-linux-gnu/usr/local/lib/squeak/3.6g-2 Squeak3.6g-5420.image

* Welcome to squeak etc
* Check any update stream updates
squeak flap -> load code updates

* then use SM to upgrade all the installed packages
world menu -> open package loader

say yes to the new client
then context menu -> upgrade all installed
say yes to Monticello update

undeclared, blaah blaah.

* then use SM to install VMMaker
select VMMaker -> install

add my initials

wait

* open VMMaker 

world menu -> open -> VMMaker

* fix the path to platform code
this happens to be 
/home/mike/tmp/squeak/platforms

* set the path to generated sources
/home/mike/tmp/squeak/src

make sure you alt-s to save the changes to the initial one

* make all the plugins external 
i don't know much about plugins so you may need some more finesse here

* generate all
wait

* save and quit
* run configure again (might as well do this at the top level)
mkdir build
cd build
../squeak/platforms/unix/config/configure

* configure now completes 

* build the vm 
make

hmm.. this dies on me with 
/home/mike/tmp/squeak/platforms/Cross/vm/sqVirtualMachine.c:314: undefined reference to `isArray'

ok.  I've done this before! honestly! but this is clearly not working as I'm writing this email.  That should get you further.  I'll investigate and get back to you.

> As for the other missing "../config/missing" file/directory could it be
> because of the older "aclocal" program?
> 
doesn't seem to matter once you get the VMMaker src sorted out.

> FreeBSD and Smalltalk.org
> It sure would be nice to have a build script of the cutting edge unix port
> that works with FreeBSD. 

yes, a script would be great.  It is something I have thought about in the past.  We would need a shell script to download all the right bits first.  You would then need a smalltalk script to drive VMMaker externally.  As you can see it is quite involved and there are various morphic prompts that would get in the way of driving this without a UI.  I'm not sure what people think about this?  I think both VMMaker and SM have well developed models so I imagine this can be driven without morphic popping anything up?  or maybe with some work?

I'll get back to you why I can't get the VM to build.  Probably something I've done but I'm no expert here either!

Cheers
Mike



More information about the Squeak-dev mailing list