首页 > 解决方案 > 无法在 pyenv virtualenv 中安装 lektor:“clang”存在于这些(其他)Python 版本中

问题描述

我正在尝试lektor使用pyenv virtualenv. 我用 Python 3.7.0 制作新的 virtualenv 没有问题,但是当我尝试时pip install lektor,我得到一个构建失败watchdog并出现以下错误消息:

pyenv: clang: command not found

The `clang' command exists in these Python versions:
  anaconda3-5.0.0

error: command 'clang' failed with exit status 127

我知道 anaconda3 版本有clang,但我也有一个版本安装在/usr/bin. 的输出which -a clang是:

$PYENV_ROOT/shims/clang
/usr/bin/clang

我可以手动将垫片设置为指向usr/bin吗?或者这个问题有不同的解决方案吗?

标签: pipclangpyenvpython-watchdog

解决方案


这是一个糟糕的解决方案,但它确实有效。通过将 shim for clang 取出并暂时移动它(例如mv $PYENV_ROOT/shims/clang ~/Desktop),watchdog可以安装,然后可以将 clang shim 移回原始位置。pyenv如果 shim 未指向给定环境中的任何位置, 则更好的选择是默认为程序的系统版本……</p>

替代解决方案

pyenv插件通过在查看当前环境中不存在实用程序后pyenv-which-ext检查是否存在实用程序来解决此类问题。$PATH这是通过 快速安装Homebrew,解决了我所有的问题。


推荐阅读