Faire le Projet GL sur une machine personnelle : Différence entre versions
(→Installation de l'arborescence globale du projet) |
(→Installation de l'environnement du projet) |
||
Ligne 53 : | Ligne 53 : | ||
= Installation de l'environnement du projet = | = Installation de l'environnement du projet = | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Installation de l'arborescence globale du projet == | == Installation de l'arborescence globale du projet == |
Version du 2 janvier 2020 à 22:27
Cette page a pour but de vous aider à installer un environnement de développement, sous Linux, pour le Projet GL de l'Ensimag, 2ème année. Le projet devrait marcher sans trop d'effort sous Mac OS X (n'hésitez pas à remonter les problèmes que vous rencontrez à vos enseignants et/ou à mettre à jour cette page). Faire marcher le projet sous Windows serait bien plus compliqué en revanche (le projet utilise des scripts shell en plus de Java, ils marcheraient peut-être avec Mingw), il est sans doute plus simple d'installer Linux que de faire le portage.
Pour le projet « Projet GL Apprentissage », les instructions s'appliquent en adaptant l'arborescence globale : /matieres/4MMPGL/GL/global en 2A étudiant, /matieres/3MM1PGL/global en 1A apprentissage.
Sommaire
Installation des outils (Java, Git, ...)
Nous allons tout d'abord installer les outils nécessaires au projet. Si ces outils sont déjà installés sur votre machine, vous n'avez rien à faire.
Sous Mac OS X : Outils pour développeurs Apple
Si vous travaillez sous Mac pensez à installer les outils pour développeur Apple, soit en les téléchargeant soit à partir du DVD d'installation de Mac OS X.
Il faut notamment modifier le fichier pom.xml comme indiqué sur cette page Questions fréquentes avec Maven pour le projet GL#tools-jar, afin de faire pointer correctement maven vers le fichier tools.jar.
Quelques conseils spécifiques pour OS X sont disponibles sur la page Projet GL sous Mac OS X .
Installation de Java
Une installation de Java quelconque fera l'affaire. Il vous faudra au minimum Java 1.8. Selon la distribution, un apt-get install openjdk-8-jdk
ou un yum install java-1.8.0-openjdk
devrait installer tout cela. Sinon, on peut télécharger Java sur le site d'Oracle ou bien sur celui d'OpenJDK.
Pour vérifier la version java utilisé actuellement sur la machine: javac -version
. Après installation, il peut être nécessaire de faire sudo update-alternatives --config javac
pour choisir la bonne version de java.
Installation de Netbeans
Les versions packagées pour Ubuntu et Debian sont en général cassées (le gestionnaire de plugins ne marche pas). Il est fortement recommandé de faire une installation manuelle. Pour pouvoir utiliser le plugin ANTLRWorks, il faut la version 8.0.1, ni au-dessus, ni en-dessous. En effet, une version 8.0.2 (la plus récente à ce jour) vous donnera une erreur à l'installation du plugin ANTLRWorks (http://plugins.netbeans.org/plugin/53652/antlrworks-2).
Suivre les instructions de téléchargement et d'installation depuis cette page : https://netbeans.org/downloads/8.0.1/
Pour plus de confort, sous Linux, n'hésitez pas à ajouter le chemin vers les binaires netbeans à votre PATH. Il suffit d'ajouter export export PATH="/chemin/vers/dossier/netbeans-8.0.1/bin:$PATH"
Installation du plugin ANTLRWorks pour Netbeans
Pour avoir la coloration syntaxique dans les fichiers .g4 (grammaires ANTLRv4), installez le plugin ANTLRWorks disponible dans les plugins officiels de Netbeans :
- Lancer netbeans
- Dans le « Tools », choisir « Plugins »
- Onglet « available plugins », choisir « ANTLRWorks editor », puis bouton « install » et se laisser guider.
Installation de Maven
Maven est disponible dans Debian et Ubuntu : apt-get install maven
Installer Maven manuellement est très facile : il suffit de télécharger une archive « Binary » depuis cette page http://maven.apache.org/download.cgi, d'extraire l'archive et de placer le répertoire bin/
au début de votre $PATH. Pour plus de détails, voir par exemple cette page si nécessaire.
Une autre option est d'utiliser le Maven distribué avec Netbeans (netbeans/java/maven/bin/mvn).
Installation de Git
Votre distribution contient probablement Git, et il suffira probablement d'un apt-get install git-core gitk
, yum install git
, ...
Sous Mac téléchargez la dernière version de Git depuis https://git-scm.com/download/mac puis suivez les indications de l'utilitaire.
Installation de l'environnement du projet
Installation de l'arborescence globale du projet
Récupérez l'arborescence GL/global/ de l'Ensimag sur votre machine. Dans l'exemple, on installe l'arborescence dans ~/ensimag, mais vous pouvez bien sûr adapter :
laptop:~$ mkdir -p ensimag/GL; cd ensimag/GL laptop:~/ensimag/GL$ git clone ssh://votrelogin@pcserveur.ensimag.fr/matieres/4MMPGL/GL/global/ global
Vérifiez que la commande ima
fonctionne :
laptop:~/ensimag/GL$ ./global/bin/ima -v
Si ce n'est pas le cas, vous pouvez recompiler ima sur votre machine comme ceci (la version fournie devrait fonctionner sur architecture Intel 32 ou 64 bits, sous Linux ou Mac OS X) :
laptop:~/ensimag/GL$ cd global/sources laptop:~/ensimag/GL/global/sources$ make
Si après avoir exéctuer make, la commande "gnatmake" n'est pas reconnue, c'est que vous devez récupérer la package ADA pour GCC (gcc-ada).
La dernière commande devrait compiler aflex, ayacc (qui sont nécessaires pour compiler ima), et ima sur votre machine.
Si des bugs sont trouvés et corrigés dans l'arborescence globale en cours de projet, il faudra simplement faire :
laptop:~$ cd ~/ensimag/GL/global laptop:~/ensimag/GL/global$ git pull
pour récupérer ces corrections (et si vous aviez eu besoin de recompiler ima, vous devrez recompiler à nouveau)
Configuration de votre compte
Dans le fichier d'initialisation de votre shell :
- si vous ne savez pas comment il s'appelle ou ce qu'il est, il s'agit sans doute de ~/.bashrc
- sous Mac il s'agit de ~/.bash_profile
- Modifier la variable PATH (à la FIN du fichier .bashrc) :
export PATH=$HOME/ensimag/GL/global/bin:$PATH
Vous aurez bien sûr besoin d'appliquer les autre consignes données dans [SeanceMachine]
pour avoir les répertoires de votre projet dans le $PATH. $HOME/ensimag/GL/global/bin
remplace simplement ~moy/GL/global/bin/
.
Une fois ces opérations effectuées, il faut demander à votre shell de relire le fichier .bashrc (sinon, les modifications ne seront effectives qu'au prochain démarrage du shell) :
$ . ~/.bashrc
- Récupérer le
~/.gitconfig
créé pendant la séance machine si vous n'en avez pas déjà un sur votre machine. Par exemple :
rsync -v pcserveur.ensimag.fr:.gitconfig ~/.gitconfig
Il est recommandé de refaire les vérifications indiquées dans [SeanceMachine]
Les résultats peuvent être légèrement différents : sur Debian, on obtient, par exemple :
$ which mvn /usr/bin/mvn $ which java /usr/bin/java
La commande which ima
doit renvoyer quelque chose comme $HOME/ensimag/GL/global/bin/ima
selon l'endroit où vous avez installé ima
.
Création du répertoire Projet_GL par rapatriement depuis l'archive
Il faut évidemment que la clé de connexion SSH soit admise sur le compte depotglXX de l'équipe (cf. section #clessh). On fait (comme dans [SeanceMachine]
) :
$ cd $ git clone ssh://depotglXX@depots.ensimag.fr/~/git/ Projet_GL
Problèmes et solutions
« S'il n'y a pas de solution, c'est qu'il n'y a pas de problème »
Historique
Fichier initial écrit par Matthieu MOY en janvier 2001 (ouch, ça fait un coup de vieux de relire ça maintenant ;-) ), puis amende par Xavier NICOLLIN, destiné à aider les étudiants à installer un environnement de développement chez eux sous Linux pour le projet GL.
Nous (les enseignants) ne pouvons pas tester toutes les distributions et configurations, mais les corrections pour votre distribution préférée sont les bienvenues !
Modification pour CygWin par Laurent Belcour (2008)
Modification pour Mac OS X par Amaury Balliet (2010)
La suite dans l'historique du Wiki...