opam
opam
et installation d’OCamltuareg
)opam
Il se peut que opam
soit déjà installé. Tapez
opam --version
Si vous avez quelque chose comme 2.0.5
ce n’est pas trop mal, vous pouvez sauter directement à la section initialisation d’opam. Sinon, suivez ce qui suit.
bin
persoPlacez-vous dans votre home et verifiez si le répertoire bin
s’y trouve
cd ~
[ -f bin ] && echo "le bin perso existe" || echo "le bin perso n'existe pas"
Si le bin local n’existe pas, il vous faut le créer
mkdir ~/bin
opam
et copie dans le bin
persoTapez dans un terminal
rm -f install.sh
wget https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh
sh install.sh
On vous demandera où vous souhaitez installer opam. Le répertoire par défaut ne convient pas, vous devrez taper le répertoire ~/bin
Une fois que c’est fini, vérifiez qu’opam
est bien installé.
opam --version
Si vous avez une erreur du style “command not found”, c’est probablement que votre répertoire bin
perso n’est pas dans votre PATH
.
opam
et install d’ocamlVérifiez si ocaml est déjà installé et quelle version est présente
ocaml --version
Si vous avez la 4.07
ou antérieur, vous avez la librairie Graphics, vous pouvez vous contenter de cela pour les TPs.
Si vous avez une version plus récente (peut-être la 4.08.1
), il vous faudra installer la libraire graphics avec opam install graphics
. A priori après ça vous avez tout, modulo l’IDE qui est à régler.
Sinon, suivez ce qui suit.
L’initialisation de opam
consiste à récupérer la liste des packages, puis à installer le package de base ocaml
. Cette seconde étape demande de compiler le compilateur ocamlc à l’aide de lui-même, c’est le bootstrap. Ca prend un peu de temps, donc pour cette étape, vous aurez à prendre patience.
Opam propose un mode “sûr” pour l’installation de package, qui permet d’éviter qu’un script mal écrit pour un package fasse des erreurs potentiellement graves pour vos fichiers. En 2021, il semblerait que ce mode sûr soit enfin accessible au département info. Il suffit donc de taper opam init
. Auparavant, malheureusement, il n’était pas possible d’activer ce mode sûr avec les machines de Valrose. Il fallait donc désactiver le sandboxing pendant l’initialisation en tapant
opam init --disable-sandboxing
Vous aurez une question qui vous demande si vous êtes d’accord pour qu’opam
modifie votre .profile
. Répondez y
es.
On vous dit de vérifier si le .profile
est bien sourcé depuis votre ~/.bashrc
. Il vous faut en fait ajouter la ligne source .profile
dans votre script d’initialisation du shell. Ce script dépend du shell avec lequel vous travaillez. Si vous ne savez pas duquel il s’agit, vous pouvez tout simplement sourcer le .profile
depuis tous les scripts d’initialisation de shell.
for x in `ls .*shrc`
do
echo "source .profile" | cat >> $x
done
On vous dit aussi de mettre à jour votre environnement dans le shell courant pour la suite de l’installation
eval $(opam env)
Vérifiez que le toplevel ocaml
qui arrive en premier dans votre PATH
est maintenant bien celui installé par opam.
which ocaml
devrait afficher la même chose que la commande
echo "$HOME/.opam/4.07.0/bin/ocaml"
Il vous faut maintenant installer les packages que nous utiliserons. Ce qui sera possible dépend de l’espace utilisateur qui vous est octroyé sur votre compte au deptinfo. Le premier package à installer, si vous n’avez pas une version 4.07 ou antérieure d’OCaml, c’est la librairie graphics.
opam install graphics --yes
Je vous conseille ensuite ocp-indent, et s’il reste de la place utop et merlin.
opam install ocp-indent --yes
opam install utop --yes
opam install merlin --yes
Démarer vscode en ouvrant un fichier avec une extension “.ml” (par exemple tapez code toto.ml
dans un terminal). Vscode vous suggérera beaucoup d’extensions à installer pour ocaml. Avec des version assez anciennes d’OCaml, il semblerait qu’il faille opter pour OCaml (deprecated)
de hackwaly pour ma part je n’ai pris que l’officielle d’Ocaml Labs. Il y a aussi OCaml Indentation
de Zachary Palmer qui fonctionne avec ocp-indent, mais j’ai l’impression que ça n’apporte rien de plus.
A priori vous n’aurez pas besoin d’Emacs, mais si vous connaissez et que vous appréciez, c’est possible, voici comment.
.emacs
Il reste à activer le mode tuareg
sous emacs. Le fichier d’initialisation d’emacs s’appelle ~/.emacs
. Par défaut à Valrose il contient une configuration qui nous bloque le bon fonctionnement de tuareg
. Peut-être qu’elle est là parce que certains enseignants l’utilisent dans leurs TPs? Pas sûr, mais au cas où, faites une sauvegarde de votre ~/.emacs
avant de le remplacer par un fichier vide.
mv ~/.emacs ~/.emacs.backup
touch ~/.emacs
Il suffit de taper
opam install tuareg user-setup
en espérant qu’il y a encore de la place…
L’activation du mode tuareg
dans emacs demande de modifier le fichier .emacs
. Une fois que vous l’avez purgé, vous pouvez laisser l’outil de configuration automatique de configuration d’emacs user-setup
faire le travail.
opam user-setup install
Ouvrez un fichier toto.ml
dans emacs. Vous devriez voir apparaitre un menu tuareg
. Si ce n’est pas le cas, appelez le chargé de TP ou envoyez un mail au professeur.