{{tag>programmation compilation}} ---- ====== Vala : Un langage de programmation pour GNOME ====== **Vala** est un nouveau langage de programmation (2006) qui propose des fonctionnalités modernes sans nécessiter l'installation d'un environnement d'exécution ou d'un interpréteur. La syntaxe de Vala est proche de celle du C#. À la différence de ce dernier, Vala n'est pas exécuté dans un environnement d'exécution mais transformé en code C puis compilé en code machine par un compilateur C standard (comme [[GCC]] par exemple). Vala est basé sur le modèle [[wp>GObject]]**(en)** et est donc particulièrement bien adapté, mais sans s'y limiter, à la programmation pour [[GNOME]], qui lui-même l'utilise. ===== Installation du compilateur (valac) ===== ====Via les dépôts officiels==== Il vous suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>valac]]**. ====Via le PPA==== [[ppa|Ajoutez à vos sources de logiciels le PPA]] suivant : [[https://launchpad.net/~vala-team/+archive/ppa|ppa:vala-team/ppa]] , rechargez la liste des paquets, puis [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt://vala|vala]]** ===== Utilisation du compilateur ===== Le compilateur Vala s'utilise comme la plupart des compilateurs directement en ligne de commande ou par le biais d'un [[wpfr>Environnement de développement intégré|EDI]]. La commande basique pour compiler un programme en Vala est la suivante : valac source.vala -o executable Il est bien-sûr possible de fournir plusieurs fichiers sources Vala pour générer un exécutable. Pour lier une bibliothèque, on utilisera l'option ''%%--pkg%% '', par exemple pour compiler un programme utilisant [[wpfr>GTK+]] : valac --pkg gtk+-3.0 gtk-hello.vala Pour plus de détails, référez-vous à la [[:man|page de manuel]] de **valac**. ===== Exemple de code (sans dépendence à GTK) ===== Voici un exemple de [[wpfr>Hello World]] en Vala : using GLib; class Sample : Object { void run () { stdout.printf ("Hello World\n"); } static int main (string[] args) { var sample = new Sample (); sample.run (); return 0; } } ===== Liens externes ===== * **(en)** [[https://wiki.gnome.org/Projects/Vala|Site officiel de Vala]] * **(fr)** [[wpfr>Vala (langage de programmation)|Vala sur Wikipedia]] ---- //Contributeurs : [[utilisateurs:Dradge|Dradge]], [[utilisateurs:Ban]], [[utilisateurs:Kriegy|Kriegy]] //