Ceci est une ancienne révision du document !
Installation
En construction
Téléchargement
Variables d'environnement
L'exécution de W nécessite la présence de 2 variables d'environnement obligatoire et 1 facultative :
- WBIN ⇒ donne le répertoire de tous les binaires complémentaires aux binaires du langage : bibliothèques partagées (
*.soet*.dll), modules externes*.o. D'éventuels sous-répertoires ne seront pas pris en compte. - WLIB ⇒ donne l'emplacement des programmes W compilés, autonomes et library. Pas de sous répertoire.
- WSRC ⇒ obligatoire pour la compilation, facultatif pour le run-time. Donne le répertoire de base des sources des programmes, fichiers
*.w: utilisé par l'interpréteur et lors de la compilation (pour les instructions include). Ce répertoire sert aussi au debugger. Si cette variable n'est pas renseignée, il ne sera pas possible d'interpréter les sources, et en mode debug le positionnement dans le source originel ne sera pas disponible. A noter que les sources seront recherchés dans l'arborescence présente dans WSRC.
Utilisation
Pour exécuter un programme W, programme principal et library, il faut lancer 3 commandes :
- compilation : le source W est compilé en assembleur W, au format texte
- assemblage : l'assembleur W au format texte est compilé en binaire : ce dernier format est celui reconnu par le run-time W
- exécution : le binaire W est interprété par le run-time W. L'appel d'une library ne peut se faire qu'avec la version binaire W de la bibliothèque appelée
Nota : les modules appelés par invoke sont des librairies partagées au niveau OS (dll sous windows, so sous Unix).
Exécutables complémentaires :
- formatage source W : ce programme permet de (re)formater tout un source W, de manière uniforme
- compilateur de règles lex : ce programme compile les règles lex (format du moteur interne de W), pour pouvoir être utilisé dans les programmes W mais aussi dans le run-time W.
Compilation
> > Usage: lwc [-WSRC:<path>] [-WLIB:<path>] <file>.w >
Le compilateur lwc a besoin de connaître :
- le répertoire contenant les sources, pour trouver le fichier à compiler
<file>.w: variable d'environnement WSRC, ou à défaut la valeur du paramètre -WSRC de la ligne de commande - le répertoire où mettre le fichier résultat, assembleur W au format texte, variable d'environnement WLIB, ou à défaut la valeur du paramètre -WLIB de la ligne de commande
Le compilateur s'arrête à la première erreur rencontrée, en affichant le libellé de l'erreur, la ligne de source concernée et la position de l'erreur.
Une fois le programme W compilé sans erreur, un fichier nommé <file>.wa sera créé dans le répertoire WLIB.
Assemblage
> > Usage: lwa [-d] [-WLIB:<path>] <file.wa|file.wp> >
L'assembleur lwa a besoin de connaître le répertoire où lire le fichier assembleur source et où écrire le binaire w généré : contenu de la variable d'environnement WLIB, ou à défaut la valeur du paramètre -WLIB de la ligne de commande. L'assembleur convertit un fichier *.wa en *.wp
L'assembleur permet également de désassembler un binaire W en produisant le source assembleur au format texte : mettre l'option -d à la commande. Le désassembleur convertit un fichier *.wp en *.wa. La règle sur le répertoire WLIB est valable pour le désassemblage, comme pour l'assemblage.
Exécution
> > Usage: lw [-d] [-t] [-WBIN:<chemin>] [-WLIB:<chemin>] [-WSRC:<chemin>] <prog> [parms...] >
Le run-time W se lance avec l'exécutable lw. Le run-time W a besoin de connaître :
- le répertoire contenant les sources, pour trouver le fichier à compiler
<file>.w: variable d'environnement WSRC, ou à défaut la valeur du paramètre -WSRC de la ligne de commande - le répertoire où mettre le fichier résultat, assembleur W au format texte, variable d'environnement WLIB, ou à défaut la valeur du paramètre -WLIB de la ligne de commande
Formatage
Compilation lex
En construction