2016-02-02 1 views
0

Je suis en train d'utiliser pdb comme un débogueur python dans emacsL'utilisation pdb dans emacs avec miniconda installer

Je reçois les problèmes d'erreur d'importation, comme dans:

https://emacs.stackexchange.com/questions/18190/missing-modules-when-debugging-python-code-in-emacs

How to specifiy path when using pdb in emacs?

la solution proposée, à savoir

(setenv "PYTHONPATH" "lib") 

dans .emacs ou emacs.d/init.el

Cela semble très peu satisfaisante que vous dupliquez efficacement les données pythonpath qui vous désarçonner à un moment donné lorsque vous mettez à jour un mais pas l'autre.

Comment peut-on obtenir le pythonpath utilisé par pdb pour être exactement le même que celui utilisé par exemple si j'ouvre un shell ipython.

En d'autres termes, je veux pdb pour refléter les emplacements de chemin qui se chargés automatiquement de mon .bashrc et miniconda installation lorsque j'ouvre ipython

aussi, comment savoir qui ipython miniconda dirs pour tirer dans le pythonpath? quel fichier est spécifié?

Répondre

0
  1. savoir où votre miniconda installation est, pour moi, ce fut:

    ~/miniconda2

  2. Assurez-vous que votre .bashrc PATH capte le python miniconda installer avant l'un des défaut installations linux, c.-à-recherche dans ~/miniconda2/bin avant /usr/bin/

  3. Dired dans ~/miniconda2/lib/python2.7

  4. 'S' pour créer un lien symbolique doux pour pdb.py, placez le lien dans ~/miniconda2/bin et appellent pdb2.7

  5. Dired dans ~/miniconda2/bin

  6. 'S' pour créer un lien symbolique doux pdb2.7, lien dans même dir et l'appeler pdb

  7. Maintenant, quand vous exécuter M-x pdb pour appeler le débogueur python, il doit ramasser la version correcte et pas se plaindre de tous les modules manquants

Avant cela, il ramassait pdb de /usr/bin, d'où tous les échecs d'importation du module. Ces étapes copient simplement l'ensemble des liens symboliques trouvés dans ce répertoire mais en utilisant les fichiers et les répertoires équivalents miniconda.