Chaque fois que j'essaie d'exporter un bloc-notes Jupyter au format PDF, l'erreur suivante s'affiche dans une fenêtre séparée:
500 : Internal Server Error
The error was:
nbconvert failed: xelatex not found on PATH, if you have not installed xelatex you may need to do so. Find further instructions at https://nbconvert.readthedocs.io/en/latest/install.html#installing-tex.
Je suis sous macOS Sierra 10.12.6.
Choses que j'ai essayées:
Fonctionnement
!echo $PATH
Rendements:
/Users/ed/anaconda/bin:/Users/ed/anaconda/bin:/usr/bin:/bin:/usr/sbin:/sbin
J'ai localisé le répertoire contenant xelatex selon la suggestion de @einsweniger ici:/usr/local/texlive/bin/x86_64-darwin. J'ai copié et collé XeLatex dans le répertoire bin ci-dessus et j'ai une nouvelle erreur:
```nbconvert failed: PDF creating failed, captured latex output:
warning: kpathsea: configuration file texmf.cnf not found in these directories: /Users/e/anaconda/bin:/Users/ed/anaconda/bin/share/texmf-local/web2c:/Users/ed/anaconda/bin/share/texmf-dist/web2c:/Users/ed/anaconda/bin/share/texmf/web2c:/Users/ed/anaconda/bin/texmf-local/web2c:/Users/ed/anaconda/bin/texmf-dist/web2c:/Users/ed/anaconda/bin/texmf/web2c:/Users/ed/anaconda:/Users/edefilippis/anaconda/share/texmf-local/web2c:/Users/e/anaconda/share/texmf-dist/web2c:/Users/ed/anaconda/share/texmf/web2c:/Users/ed/anaconda/texmf-
This is XeTeX, Version 3.14159265-2.6-0.99999 (TeX Live 2018) (preloaded format=xelatex)
kpathsea: Running mktexfmt xelatex.fmt
I can't find the format file `xelatex.fmt'!
```
J'ai également mis xelatex.fmt dans le répertoire, mais je reçois toujours l'erreur.
Je ne suis pas habitué aux chemins d'installation Mac, d'après ce que dit la basictex faq , je suppose que les exécutables doivent résider dans le /usr/local/texlive/bin/x86_64-darwin
Exécuter which xelatex
dans un terminal peut également aider à localiser la commande, mais cela ne fonctionne que si le répertoire est déjà dans votre variable PATH.
Une autre méthode serait d'exécuter find / -name 'xelatex'
si ce n'est pas dans votre PATH, donc vous pourriez le trouver de cette façon (cela peut prendre un certain temps car cela va vous chercher dans tout votre disque dur).
Une fois que vous l'avez trouvé et ajouté le chemin d'accès à votre variable PATH, vous devez également vérifier si le jupyter a le bon PATH en exécutant
import os
print(os.environ['PATH'])
dans un cahier.
J'ai déjà rencontré des problèmes similaires dans le passé avec des chemins en python lors de l'utilisation de tensorflow sous Windows et Linux. Comme le soulignent d’autres, l’utilisation de PATH est la voie à suivre (mise à jour dans .bashrc s’il s’agissait de linux), mais j’ai trouvé le code ci-dessous pour résoudre les problèmes de chemin d’accès script par script.
import sys
if "\your\path\to\xelatex" not in sys.path:
print('adding path') # I just add this to know if the path was present or not.
sys.path.append("\your\path\to\xelatex")
essentiellement, vérifierait PATH pour ce que vous cherchez et l'ajouterait s'il manquait. Vous n'avez probablement même pas besoin de la déclaration 'if'.
Peut-être que ce n’est peut-être pas la manière la plus pratique de fonctionner correctement pour moi, car je sais que le chemin en question est peut-être un chemin «rarement utilisé» ou «à usage unique», ajoute-t-il ...
Ainsi, comme cela a été souligné dans les commentaires ci-dessus (et je pense que vous l’avez déjà fait), recherchez l’emplacement du fichier et ajoutez son emplacement à l’aide du code ci-dessus.
Un peu plus de lecture à ce sujet: https://docs.python.org/3/tutorial/modules.html 6.2 Modules standard
Si une mise à jour est disponible, essayez peut-être de mettre à jour Jupyter.