Réparer un environnement virtuel Python

Ahh… ça ne marche plus !

Les environnements virtuels sont merveilleux. Néanmoins, après un upgrade de Python, ils cessent généralement de fonctionner.

Du moins c’est le cas lorsqu’on utilise un Python sous Homebrew :

$ python
dyld: Library not loaded: @executable_path/../.Python
  Referenced from: /Users/serge/.virtualenvs/gensys/bin/python
  Reason: image not found
Trace/BPT trap: 5

C’est en fait facile à réparer !

Réparation

  1. enlever les liens symboliques ;
  2. re-créer l’environnement virtuel.

Exemple de commandes :

$ cd mon-virtualenv
$ find . -type l -print0 |xargs -0 rm -vf --   # Enlever les symlinks
$ virtualenv .   # Ajouter les arguments personnalisés, comme "-ppython2.7"

Et voilà !