Jupyter arroja un error de “intérprete incorrecto” en la instalación de Homebrew.
Suposiciones:
Editor VScode
Instalación nativa (sin entornos virtuales)
zsh en Mac
python 3.10
Entonces, mi problema es que cada vez que uso:
jupyter notebook
Obtengo un error como este:
zsh: /usr/local/bin/jupyter: intérprete incorrecto: /usr/local/Cellar/jupyterlab/3.2.4/libexec/bin/python3.9: no existe el archivo o el directorio
sin embargo, estoy ejecutando estos comandos según esta publicación y también esta publicación
rm '/usr/local/bin/jupyter'
brew link --overwrite jupyter
brew link --overwrite --dry-run jupyter
brew unlink jupyter && brew link jupyter
brew uninstall jupyter
brew install jupyter
brew link --overwrite jupyter
Incluso he intentado editar el archivo JSON para apuntar a la versión 3.10 de Python, pero no está funcionando.
Quiero hacer esto en homebrew en lugar de usar pip3.10 o cambiar a un entorno conda. ¿Alguien tiene alguna idea?
davy.ai
Según el mensaje de error y las publicaciones referidas, parece que el problema está relacionado con el hecho de que el comando jupyter busca el intérprete python3.9, pero no puede encontrarlo. Es posible que la instalación de jupyter con homebrew esté vinculada a la versión incorrecta de Python.
Una solución podría ser reinstalar jupyter utilizando la versión Python 3.10. Aquí están los pasos:
brew uninstall jupyter
Instala jupyter usando homebrew y la versión Python 3.10:
brew install jupyter --build-from-source --HEAD
Vincula jupyter a la versión Python 3.10:
brew link jupyter
Verifica que el comando jupyter esté apuntando a la versión correcta de Python:
jupyter kernelspec list
debería mostrar el kernel de Python 3.10.Si estos pasos no funcionan, puede ser necesario editar manualmente el comando jupyter para que apunte al intérprete Python correcto. Esto se puede hacer escribiendo
which python3.10
para obtener la ruta al intérprete Python 3.10, y luego editando el archivo jupyter en/usr/local/bin/jupyter
para que apunte a esa ruta en lugar de la ruta actual.Vale la pena señalar que el uso de un entorno virtual o un entorno conda puede ser una solución más limpia que evita este tipo de problemas de compatibilidad.