Squeak

This page is a work in progress

Squeak is an implementation of the Smalltalk language.

=Get the source=

Download Squeak-3.9-8.src.tar.gz and unpack wget http://www.squeakvm.org/unix/release/Squeak-3.9-8.src.tar.gz tar xzf Squeak-3.9-8.src.tar.gz cd Squeak-3.9-8

=Edit the unix configure file for cross compilation=

AC_REQUIRE_SIZEOF(int,    4) AC_REQUIRE_SIZEOF(double, 8) AC_CHECK_INT64_T
 * open the file
 * change the lines:

to

SQUEAK_INT64_T="long long" AC_DEFINE_UNQUOTED(squeakInt64, long long)
 * 1) AC_REQUIRE_SIZEOF(int,    4)
 * 2) AC_REQUIRE_SIZEOF(double, 8)
 * 1) AC_CHECK_INT64_T

AC_C_DOUBLE_ALIGNMENT AC_C_DOUBLE_ORDER
 * change the lines

to

AC_DEFINE(DOUBLE_WORD_ORDER)
 * 1) AC_C_DOUBLE_ALIGNMENT
 * 2) AC_C_DOUBLE_ORDER

disabled_plugins="" to disabled_plugins="SqueakFFIPrims"
 * change the line

=Edit the Makefile.in= $(squeak) : config.sh $(SQLIBS) version.o            $(LINK) $(squeak) $(SQLIBS) version.o $(LIBS) [plibs] vm/vm.a             @echo @size $(squeak) @echo @./$(squeak) -version @echo and comment out the last two lines: $(squeak) : config.sh $(SQLIBS) version.o            $(LINK) $(squeak) $(SQLIBS) version.o $(LIBS) [plibs] vm/vm.a             @echo @size $(squeak) @echo #@./$(squeak) -version #@echo
 * edit Makefile.in and find the lines:

=Set up the plugins= cd platform/unix/config ./mkacinc > acplugins.m4 autoconf -o configure-gumstix configure-gumstix.ac rm acplugins.m4 cd ../../..

=Make a build directory= mkdir bld cd bld

=Build it= CC=arm-linux-gcc CFLAGS='-O3' \ ../platforms/unix/config/configure --without-x --without-npsqueak \ --without-rfb --without-ffi --host=arm-linux --prefix=/usr/squeak make sudo make install