Il s'agit du compilateur C2 écrit en C2 lui-même.
C2 est une évolution de C, veuillez consulter http://c2lang.org pour plus d'informations.
La première version a été écrite en C++ et se trouve également dans l'historique de cette archive.
consultez le document d'installation pour l'installation sous Linux ou OSX.
c2c a besoin de l'interface libc, veuillez donc cloner l'archive c2_libs dans le même répertoire de base que cette archive :
git clone [email protected]:c2lang/c2_libs.git
Pour que le répertoire ressemble à : base/ c2_libs/ c2compiler/
Aussi
Puisque c2c est écrit en C2, un bootstrap est nécessaire. S'il vous plaît, courez
. ./env.sh
make -C bootstrap
./install_plugins.sh
Cela créera une version boostrap c2c et l'utilisera pour construire le compilateur c2c. La sortie sera dans le dossier output/
Vous pouvez maintenant exécuter le compilateur standard pour compiler (autres) projets C2
./output/c2c/c2c
Une manière plus intéressante serait de créer un lien symbolique dans ~/bin :
cd ~ /bin
ln -s < path_to_c2compiler > /output/c2c/c2c c2c
Assurez-vous également que ~/bin est dans votre variable PATH
Le compilateur C2 dispose d'un système de plugins , qui permet de charger des plugins lors de la compilation et de modifier l'AST par ceux-ci.
c2c recherchera les plugins dans la variable d'environnement $C2_PLUGINDIR (définie par le script env.sh). Le chemin peut également être défini dans le fichier de construction . Pour installer initialement les plugins, exécutez ./install_plugins.sh . Cela créera ~/c2_plugins/ et y copiera tous les plugins.
Pour exécuter c2c sans plugins, utilisez --noplugins .
Pour exécuter les tests unitaires
./output/tester/tester test