Comment compiler une VM Squeak

From OFSET Wiki

Jump to: navigation, search

La machine virtuelle de Squeak a comme spécificité d'être écrite dans un sous-ensemble de Squeak nommé Slang. Au moyen de l'outil VMMaker, il est possible de générer une version C de cette machine virtuelle, puis au moyen d'un compilateur C d'en générer un exécutable. La machine virtuelle écrite en Slang peut-être testé dans une image Squeak.

[edit] Comment compiler une VM Squeak de base sous Linux ou Mac OS X?

Récupérer les sources de Squeak (dans un répertoire temporaire /tmp/squeak par exemple)

  • Soit sur la page ici par exemple, la version 3.9-8, et désarchiver les sources de Squeak :
tar -xzvf Squeak-3.9-8.src.tar.gz
  • Soit la toute dernière version par svn :
svn co http://squeakvm.org/svn/squeak/trunk

Construire un répertoire build dans le répertoire de source de Squeak :

mkdir build
cd build

Attention, utiliser un compilateur gcc-2.95 pour ne pas avoir de problèmes. Si vous avez plusieurs compilateurs gcc comme sous Debian, sélectionner la version 2.95 par :

export CC=gcc-2.95

Il vous faut aussi la dernière version de xorg-dev (sous KDE, apt-get sinon, à confirmer)

sudo aptitude install xorg-dev

Compiler l'ensemble et installer squeak:

  • Soit dans le répertoire prévu:
../platforms/unix/config/configure
make
make install
  • Soit vers votre répertoire privé (où $HOME est le chemin où se trouve /local/squeak) :
mkdir ~/local
mkdir ~/local/squeak/
../platforms/unix/config/configure --prefix=$HOME/local/squeak/
...la suite est la meme qu'avant...

Puis récupérer les sources et l'image comme d'habitude (lien vers la page du wiki à ajouter pour sources)

[edit] Comment construire une machine virtuelle spécifique ?

  • Récupérer une image 3.7 complète (i.e contenant VMMaker) : ftp://st.cs.uiuc.edu/Smalltalk/Squeak/3.7/Squeak3.7-5989-full.zip
  • Lancer VMMaker depuis le menu de fond,
  • Configurer correctement les répertoires de VMMaker par rapport aux sources de Squeak,
  • Sélectionner les plugins internes et externes,
  • Générer la VM avec VMMaker en cliquant sur Generate All.
  • Compiler la VM comme ci-dessus.
Personal tools