Taper dans un terminal
opam --version
vous devriez voir quelque chose comme 2.0.5
. Si c’est tout bon, il vous faut vérifier maintenant l’installation des packages.
Si vous avez une erreur du style “command not found”, il reste encore une chance. Regardez si opam est bien installé dans votre répertoire local:
ls ~/local
Si vous ne voyez pas apparaitre opam
, c’est qu’il n’a pas été installé, ou il a été installé mais pas là où le script aurait dû l’installer. Lisez ceci pour installer opam
. Il vous sera demandé durant l’installation où installer opam
. Le répertoire par défaut est un répertoire réservé à root, vous devez donc choisir un autre répertoire. Le répertoire ~/local
est ce que je vous propose. Si vous n’avez pas un répertoire local à la racine de votre compte, il faudra le créer avant de lancer l’installation d’opam (cd ~;mkdir local
).
Si vous voyez apparaitre opam
dans votre répertoire local mais que opam --version
a échoué, tapez
~/local/opam --version
Si cette fois-ci vous voyez la version d’opam installée, il vous reste seulement à ajouter votre répertoire local dans votre $PATH
, voir ci-dessous. Si cela marche pas mais qu’opam apparait bien dans local, c’est peut-être un problème de droits sur le répertoire local ou le fichier opam.
Taper dans un terminal
echo $HOME
pour connaitre le chemin absolu vers la racine de votre compte. Chez moi, selon la machine, j’obtiens /users/personnel/e/elozes
ou /u/profs/elozes/
.
Regardez ensuite si le répertoire $HOME/local
est bien dans$PATH
echo $PATH
Chez moi j’ai /users/personnel/e/elozes/local
et /u/profs/elozes/local
qui apparaissent bien dans $PATH
. Si ce n’est pas le cas pour vous, il va falloir l’y rajouter.
$PATH
Il suffit de taper
export PATH="$HOME/local:$PATH"
et vous devriez avoir maintenant opam qui fonctionne dans cette session shell. Pour que cela reste vrai pour toute session shell future vous devez ajouter la ligne précédente dans votre script d’initialisation.
Ce script d’initialisation dépend du shell que vous avez, et qui peut changer selon que vous êtes sous un terminal ou sous emacs, sur une machine d’une salle ou d’une autre, etc. Je vous recommande donc de créer si ce n’est déjà fait un fichier .profile
qui contiendra la partie commune à tous les .xxxshrc
, et d’y mettre la ligne export ...
prédécente. Il faut ensuite demander à tous les scripts d’initialisation d’aller charger le script .profile
. Pour faire tout cela, vous pouvez taper
touch .profile
echo "export PATH=\"$HOME/local:\$PATH\"" | cat >> .profile
for x in `ls .*shrc`
do
echo "source .profile" | cat >> $x
done
opam
Vérifiez que vous avez bien une fichier .profile
et qu’il est sourcé depuis votre .rc
, cf ci-dessus. Ensuite, tapez
opam init --disable-sandboxing
et répondez y(es) aux deux questions.
.emacs
Il se peut que le script d’initialisation d’emacs par défaut contienne des instructions qui empêchent la bonne installation de tuareg, le mode emacs pour OCaml. Faites une copie de sauvegarde de votre fichier .emacs
d’origine (ou effacez-le si vous n’y avez jamais touché jusqu’à présent), et réinitialisez-le
mv ~/.emacs ~/.emacs.copie_de_sauvegarde
touch ~/.emacs
Vous avez opam qui fonctionne, et vous avez installé les packages
opam install tuareg caml-mode merlin utop ocp-indent user-setup
en répondant y
à la question “continue?”. Si tout s’est bien passé, vous devriez avoir maintenant un répertoire ~/.opam/
qui contient pas mal de choses. Pour que votre système sache où les trouver, il faut que les scripts d’initialisations connaissent ce répertoire. La ligne à rajouter dans votre .profile
est
eval $(opam env)
Normalement elle y a été ajoutée automatiquement quand vous avez fait opam init
, mais si ce n’est pas le cas rajoutez-là et tapez-là aussi dans votre shell courant pour qu’elle prenne effet dans ce shell.
Maintenant, si vous tapez
which ocaml
vous devriez voir $HOME/.opam/default/bin/ocaml
, où $HOME
est le chemin absolu vers la racine de votre compte.
Lancez emacs et créez un fichier test.ml
(C-x C-f). Vous devriez avoir basculé dans le mode tuareg et le voir écrit dans la barre du bas et dans le menu. Si ce n’est pas le cas, c’est que quelque chose ne va pas.
Purgez votre .emacs
(voir plus haut) puis réinstallez user-setup
(trois commandes à taper)
opam uninstall user-setup
opam install user-setup
opam user-setup install