从版本1.4.0开始,sphinx_rtd_theme不再是硬依赖

时间:2017-07-06 06:02:15

标签: python python-sphinx

  

C:\ Users \ Administrator \ Desktop \ item \ code_serv \ documents \ api> make html   运行Sphinx v1.6.2加载pickle环境......失败:

     

无法在<module 'sphinx.util.nodes' from 'c:\\users\\administrator\\appdata\\local\\programs\\python\\python36-32\\lib\\site-packages\\sphinx\\util\\nodes.py'>

上获取属性'WarningStream'

主题错误:

  

sphinx_rtd_theme不再是version 1.4.0以来的硬依赖关系。   请手动安装。(pip install sphinx_rtd_theme

我该如何解决这个问题?

5 个答案:

答案 0 :(得分:3)

您的问题并未表明您是否在网上搜索了“如何安装sphinx_rtd_theme”或阅读其文档。

错误消息提供了一个线索:

  

请手动安装。 (pip install sphinx_rtd_theme

或者您可以尝试following the directions in the manual

答案 1 :(得分:0)

在我的Mac OS X安装上,尽管遵循了这封信的简单说明,但我仍然遇到此问题。

其他人也报告了有关Github问题的问题:https://github.com/readthedocs/sphinx_rtd_theme/issues/618

就我而言,问题出在我的python环境上(我在Mac上使用的是默认系统python 2.7)。我最终使用python 3.7.3切换到pyenv,这解决了这个问题。

Mac上的说明(来自https://opensource.com/article/19/5/python-3-default-mac):

$ brew install pyenv 

$ pyenv install 3.7.3

$ pyenv global 3.7.3

$ pyenv version
3.7.3 (set by /Users/mbbroberg/.pyenv/version)

$ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.zshrc

要验证它是否有效:

$ which python
/Users/mbbroberg/.pyenv/shims/python

$ python -V
Python 3.7.3

$ pip -V
pip 19.0.3 from /Users/mbbroberg/.pyenv/versions/3.7.3/lib/python3.7/site-packages/pip (python 3.7)

别忘了之后pip install sphinx sphinx_rtd_theme

答案 2 :(得分:0)

就我而言(从RTD theme source开始构建),问题似乎是由于<a href="tel:+33XXXXXXXXX">xx.xx.xx.xx.xx</a> html_theme_path配置值的行为更改所引起的。虽然以前接受相对于makefile目录的路径,但路径现在必须相对于配置目录:

html_theme_path

包含自定义主题的路径列表,可以是子目录或zip文件。相对路径是相对于配置目录而言的。

0.6版的新功能。

Sphinx documentation > Configuration

答案 3 :(得分:0)

我发现了另一个问题,我安装了两个狮身人面像,一个通过pip,另一个通过brew。删除一个(我选择通过brew删除安装)解决了这个问题。

brew remove sphinx-doc

如果仍然无法正常运行,请尝试卸载并重新安装

pip3  uninstall sphinx sphinx_rtd_theme
pip3  install sphinx sphinx_rtd_theme

答案 4 :(得分:0)

我在 Windows 10 Pro 笔记本电脑上遇到了同样的问题。我已经从 Windows 商店安装了 Python 3.9。我必须首先找到 Python 和 pip 应用程序的安装位置,并将其添加到 PATH 变量中。这是在查看的文件夹中:

c:\users\<username>\appdata\local\programs\python\python39\Scripts

然后我使用以下方法安装了 sphinx:

pip install -U sphinx

然后我必须将 SPHINXBUILD 环境变量设置为正确的值:

SPHINXBUILD="c:\users\<username>\appdata\local\programs\python\python39\Scripts\sphinx-build.exe"

当我尝试使用 sphinx_rtd_theme 时,我不断收到错误消息:

Theme error:
sphinx_rtd_theme is no longer a hard dependency since version 1.4.0. Please install it 
manually.(pip install sphinx_rtd_theme)

我运行了以下命令:

pip install sphinx_rtd_theme

但是当我尝试运行 make html 时,它给出了错误:

Running Sphinx v3.5.1

Configuration error:
There is a syntax error in your configuration file: bad input (conf.py, line 57)

最后,我不得不在我的 conf.py 文件中进行以下更改:

# Add this to the top of the conf.py file
import os
import sys
sys.path.insert(0, os.path.abspath('C:\\Users\\ <username>\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python39\\site-packages'))
import sphinx_rtd_theme

extensions = [
   "sphinx_rtd_theme",
]

看起来 sphinx-build 无法获取 sphinx_rtd_theme 包的位置,除非您以上述方式给出显式路径。 “¯_(ツ)_/¯”